操作系统==二分查找

文章目录

概述

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

二分查找

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

代码

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

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

相关推荐
番茄灭世神3 小时前
Linux从入门到进阶 第四章
linux·操作系统·计算机基础
gfdgd xi1 天前
GXDE OS 25.3.1 更新了!修复更多 bug 了!
linux·c++·操作系统·bug·deepin
Trouvaille ~1 天前
【Linux】TCP vs UDP深度对比:如何选择与用UDP实现可靠传输
linux·网络·c++·tcp/ip·udp·操作系统
_OP_CHEN2 天前
【Linux系统编程】(三十三)System V 共享内存精讲:Linux 最快 IPC 的原理与实战精髓
linux·服务器·操作系统·共享内存·c/c++·ipc·system v
老鼠只爱大米2 天前
LeetCode经典算法面试题 #153:寻找旋转排序数组中的最小值(暴力搜索、二分查找等五种实现方案详细解析)
算法·leetcode·二分查找·旋转数组·最小值搜索
Trouvaille ~2 天前
【Linux】TCP可靠性与性能优化详解:从确认应答到拥塞控制
linux·运维·服务器·网络·tcp/ip·性能优化·操作系统
Mr_WangAndy3 天前
C++数据结构与算法_线性表_数组_概念动态数组,刷题
c++·二分查找·数组刷题·数组字符串逆序·零移动·有序数组的平方
Jinkxs3 天前
【Linux】零基础入门:一篇吃透操作系统核心概念
linux·运维·服务器·网络·操作系统
何中应4 天前
CentOS安装Nginx提示没找到
后端·centos·操作系统
小李独爱秋4 天前
你真的会用lsof吗?一个被低估的神器级指令(对比netstat & ss)
linux·运维·服务器·操作系统·apache·lsof