操作系统==二分查找

文章目录

概述

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

二分查找

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

代码

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

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,这篇结束。

相关推荐
zxy284722530112 小时前
解决笔记本电脑进入操作系统黑屏只有鼠标的问题
操作系统·win10·鼠标·黑屏·突然
meadel14 小时前
windows 系统触摸屏禁用左右滑动
操作系统
Kyle012314 小时前
Cache缺失、缺页和TLB缺失的处理机制解析
操作系统·408·计组
REDcker1 天前
软件开发者需要关注CPU指令集差异吗?
linux·c++·操作系统·c·cpu·指令集·加密算法
技术小甜甜2 天前
[电脑疑难档案] WSL 无法连接 MySQL 的解决方案:127.0.0.1 不管用?试试这个方法!
操作系统·开发·wsl
不穿格子的程序员2 天前
操作系统篇3——深入理解操作系统:Linux 常用命令、系统中断与用户态/内核态详解
linux·服务器·操作系统·内核态·用户态·中断
海棠蚀omo2 天前
Linux信号保存的核心:未决信号集与阻塞信号集——探秘内核如何实现信号的阻塞、暂存与派发
linux·操作系统
不穿格子的程序员2 天前
操作系统篇4——深入理解操作系统:僵尸进程、孤儿进程与进程调度算法详解
操作系统·僵尸进程·孤儿进程·进程调度
代码AC不AC3 天前
【Linux】计算机的基石:从冯·诺依曼体系结构到操作系统管理
linux·操作系统·冯诺依曼体系结构
序属秋秋秋4 天前
《Linux系统编程之进程环境》【环境变量】
linux·运维·服务器·c语言·c++·操作系统·系统编程