C語言二分法查詢法

2021-08-25 02:54:43 字數 748 閱讀 5295

#c語言

##== 二分查詢法 ==

所謂的二分查詢法,其實是一種有序的查詢方法,也稱折半查詢(binary search),如果是無序的則要先進行排序操作。基本思想是:目標值通過與中間元素比較,可分為三種情況:

第一種情況:目標值與中間元素相等,查詢結束;

第二種情況:目標值比中間元素大,則把後半部分的中間元素與目標值比較;

第二種情況:目標值比中間元素小,則把前半部分的中間元素與目標值比較;

這三步一直迴圈,直到查詢結束。

程式如下

#include int bin_search(int *num,int cnt,int target)

else if(num[mid] < target)

else //判斷是否相等

}printf("查詢次數:%d\n",counter);

return 0;

}int main(void)

; while(1)

return 0;

}

執行程式,結果如下:

說明

C 二分法查詢,遞迴二分法

用二分法來求需要查詢的值.includeusing namespace std 查詢key元素是否存在 int findkey const int buf 100 const int ilen,const int key else right left mid 1 查詢失敗 return 1 查詢k...

python二分法查詢 Python 二分法查詢

二分法查詢主要的作用就是查詢元素 lst 1,3,5,7,12,36,68,79 資料集 百萬級資料 num int input 請輸入你要查詢的元素資訊 for el in lst if num el print 存在 break else print 不存在 len lst 0 1 2 3 4 ...

二分法查詢

前幾天csdn上說只有10 程式設計師能寫出正確的二分法查詢 so.我在看過二分法查詢方法後寫了乙個 一次測試成功.範圍 需要次數 10 4 100 7 1000 10 10000 14 100000 17 1000000 20 除了對特別小的陣列外,二分法查詢表現是非常優秀的.每次對範圍加倍可以建...