操作系统==二分查找

文章目录

概述

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

二分查找

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

代码

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

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

相关推荐
8Qi816 小时前
LeetCode 4:寻找两个正序数组的中位数 —— 二分查找法
java·算法·leetcode·职场和发展·二分查找
小宇子2B18 小时前
缺页中断不是“出错”,是内核最忙的一条正常路径
操作系统
小宇子2B18 小时前
内存不够时,内核怎么把"冷"页踢出去——swap 与页面回收
操作系统
磊 子19 小时前
二.内核讲解
开发语言·操作系统·系统
下午写HelloWorld1 天前
Linux系统及Ubuntu常用指令
linux·ubuntu·操作系统
Surest1 天前
AI时代操作系统过时了么?
操作系统
小宇子2B1 天前
页表凭什么不撑爆内存,CPU 凭什么查得不嫌慢
操作系统
Surest2 天前
OpenHarmony 技术拆解(一):多内核兼容与硬件能力发布机制
操作系统
我命由我123452 天前
Windows 操作系统 - Windows 查看防火墙是否开启、Windows 查看防火墙放行端口
java·运维·开发语言·windows·java-ee·操作系统·运维开发
老王熬夜敲代码2 天前
CPU缓存的访问机制
操作系统·cpu