操作系统==二分查找

文章目录

概述

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

二分查找

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

代码

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

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

相关推荐
张小潇4 小时前
AOSP15 Input专题InputManager源码分析
android·操作系统
何中应11 小时前
vi编辑器使用
linux·后端·操作系统
何中应11 小时前
Linux进程无法被kill
linux·后端·操作系统
何中应11 小时前
rm-rf /命令操作介绍
linux·后端·操作系统
何中应12 小时前
Linux常用命令
linux·操作系统
Jasmine_llq1 天前
《P1973 [NOI2011] NOI 嘉年华》
二分查找·贪心策略·坐标离散化·动态规划(前后缀区间 dp)·区间计数·排序与去重·stl 容器
_OP_CHEN2 天前
【Linux系统编程】(四十)线程控制终极指南:从资源共享到实战操控,带你吃透线程全生命周期
linux·运维·操作系统·线程·进程·c/c++·线程控制
炸膛坦客2 天前
FreeRTOS 学习:(二十九)任务切换的底层逻辑(了解)
单片机·操作系统·freertos
Invincible_2 天前
记一次 Windows 资源管理器 (explorer.exe) 无限闪退的硬核排查与修复
操作系统
请输入蚊子2 天前
《操作系统真象还原》 第六章 完善内核
linux·汇编·操作系统·bochs·操作系统真像还原