欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Binary Search

程序员文章站 2022-05-05 17:37:08
...

Binary Search 二分查找

适用范围: 所查找的数组必须是有序的

 在一个左闭右开的区间内查找一个数, 每次查找都和中间的数比较, 每次查找都把数据分成两半

int binarySearch(int a[],int left,int right,int key)
{
	while (left < right)
	{
		int mid = (left + right) / 2;
		if (a[mid] == key) return mid;  //返回下标
		else if (a[mid] < key) left = mid + 1;
		else if (a[mid]>key) right = mid;
	}
	return 0;  //没找的
}