?? 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 + -