操作系统==二分查找

文章目录

概述

最近看到操作系统的一些代码,觉得蛮有意思,拿出来看看,今天看下二分查找的。

二分查找

二分查找,又叫折半查找,可以参考以前写的文章,二分查找

代码

操作系统的二分查找,代码如下:

cpp 复制代码
void *bsearch(const void *key, const void *base, size_t num, size_t size,
	      int (*cmp)(const void *key, const void *elt))
{
	const char *pivot;
	int result;

	while (num > 0) {
		pivot = base + (num >> 1) * size;
		result = cmp(key, pivot);

		if (result == 0)
			return (void *)pivot;

		if (result > 0) {
			base = pivot + size;
			num--;
		}
		num >>= 1;
	}

	return NULL;
}
EXPORT_SYMBOL(bsearch);

小结

本篇写了操作系统的一个二分查找的代码,可以参考下之前的代码,当然,操作系统是对c++写的,有兴趣,可以看看这里。操作系统的二分查找,还是很有意思的,应用范围也更广。可以看看,OK,这篇结束。

相关推荐
atomicmaker1 天前
操作系统 — 内存管理
操作系统·内存管理·虚拟内存·段页式
atomicmaker1 天前
操作系统 — 文件管理
操作系统·文件管理·文件系统·计算机系统
白狐_7982 天前
【XV6操作系统】Lab2(Page Table) 满分通关与答辩指南:结合408考点深度剖析
操作系统·麒麟·xv6
atomicmaker2 天前
操作系统 — 设备管理
操作系统·磁盘·设备管理·缓冲
z200509303 天前
【Linux学习】Linux中进程终止和进程等待
linux·学习·操作系统
niannian3 天前
从零开始!RuyiSDK + RISC-V 新手完整入门指南(Windows WSL2 环境)
操作系统
Bruce_kaizy3 天前
c++ linux环境编程——文件io介绍以及open 、write 、read 三剑客深度详解
linux·服务器·c++·ubuntu·操作系统·文件io
morn_venus3 天前
从 20 倍性能差距看 Linux 的 vDSO 与 vvar 机制
操作系统
iCxhust4 天前
8086 汇编 TINY 和 SMALL 编程MODEL区别
汇编·单片机·嵌入式硬件·操作系统·微机原理·8088单板机
atomicmaker4 天前
经典同步问题
操作系统·pv·同步问题