查找之折半查找
程序员文章站
2022-03-15 12:01:24
...
/*
名称:折半查找
说明:这是比顺序查找要更有效率的一种方式。它是按照每次减少一半的规模进行查找的。但是其存储结构必须要是顺序结构,即连续的存储空间,而且元素间必须有序。这就是我在上节顺序查找中说到的,事先进行按照一定的规律进行存储,这样查找时就能减少时间复杂度。
对于折半查找来说,其时间复杂度为O(log2N)。
*/
//折半查找(n为元素个数,key为待查找元素)
int Binary_Search(int elem[],int n,int key)
{
int low = 0,high = n-1,mid = 0;
while(low <= high)
{
mid = (low+high)/2;
if(elem[mid] == key)
return mid;
else if(elem[mid] < key)
low = mid+1;
else
high = mid-1;
}
return -1;
}
上一篇: 学习系统
下一篇: java编程思想笔记(十五)I/O高级