📄 binsrch.c
字号:
//线性表的折半查找算法
#define MAX 14 //元素的最大个数
int R[MAX]={4,8,12,24,53,71,88,103,147,192,206}; //定义数组
int n=11; //实际元素个数有11个,序号从0到10
int BINSEARCH (int k ) //二分查找算法
{ int low,mid,high ;
low = 0; high = n ; //初始化查找区间
while ( low <= high ) { //如果区间存在
mid = ( low + high )/2 ; //求区间中心的位置
if ( R[mid] == k ) return mid ; //查找成功,返回节点位置信息
if ( R[mid] > k ) high = mid - 1 ;//中心节点关键字偏大,查找低半段
else low = mid + 1 ; //中心节点关键字偏小,查找高半段
}
return ( -1 ) ; //查找失败,返回失败标志
}
main ()
{
int i;
i = BINSEARCH (53); //调用二分查找算法成功,i=4
i = BINSEARCH (105); //调用二分查找算法失败,i=-1
while (1) ; //在这一行设置断点,中止程序运行,以便观察程序运行的结果
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -