二分法查詢

2021-09-11 01:40:42 字數 487 閱讀 7504

二分法查詢

1.適用條件

二分法查詢適用於資料量較大時,但是資料需要先排好順序。

2.思想

二分查詢就是將查詢的鍵和子陣列的中間鍵作比較,如果被查詢的鍵小於中間鍵,就在左子陣列繼續查詢;如果大於中間鍵,就在右子陣列中查詢,否則中間鍵就是要找的元素。

3.時間複雜度

最壞情況查詢最後乙個元素(或者第乙個元素)master定理t(n)=t(n/2)+o(1)所以t(n)=o(log2n)

最好情況查詢中間元素o(1)查詢的元素即為中間元素(奇數長度數列的正中間,偶數長度數列的中間靠左的元素)

4.空間複雜度

s(n)=n

int a=;

int l=sizeof(a)/sizeof(a[0]);

int serach(int key)

else if(a[mid]else

}}

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 除了對特別小的陣列外,二分法查詢表現是非常優秀的.每次對範圍加倍可以建...