給定乙個有序整型陣列, 實現二分查詢

2021-10-04 00:13:37 字數 781 閱讀 1099

1.二分查詢:

二分查詢也稱折半查詢,首先,假設表中元素是按公升序排列,將表中間位置記錄的關鍵字與查詢關鍵字比較,如果兩者相等,則查詢成功;否則利用中間位置記錄將表分成前、後兩個子表,如果中間位置記錄的關鍵字大於查詢關鍵字,則進一步查詢前一子表,否則進一步查詢後一子表。重複以上過程,直到找到滿足條件的記錄,使查詢成功,或直到子表不存在為止,此時查詢不成功。

2.**:

public

static

intbinarysearch

(int

arr,

int key)

else

if(key>arr[mid]

)else

}return-1

;}public

static

void

main

(string[

] args)

; scanner scan =

newscanner

(system.in)

;int n = scan.

nextint()

; system.out.

println

(binarysearch

(arr,n));

}

3.執行結果:

python實現乙個二分查詢

二分查詢 二分查詢也稱折半查詢 binary search 它是一種效率較高的查詢方法。但是,折半查詢要求線性表必須採用順序儲存結構,而且表中元素按關鍵字有序排列 查詢過程 首先,假設表中元素是按公升序排列,將表中間位置記錄的關鍵字與查詢關鍵字比較,如果兩者相等,則查詢成功 否則利用中間位置記錄將表...

用二分查詢在乙個有序陣列中找數

有序陣列 a 二分查詢 首先在陣列中找到中間位置的陣列下標mid start end 2,將所要找的數x與mid進行比較 若x mid,則要找的數在後半部分,所以令start mid 1 若x重複以上步驟,直到找到x mid 實現如下 include include pragma warning d...

乙個二分查詢程式

原問題來自 http topic.csdn.net u 20090826 18 c08b69e8 ce22 4427 8687 ffb53e380437.html 問題如下 有一連串字母,由且必由若干個 a,b,c,d,e 組成,順序是 若干個 a,若干個 b,若干個 c,若干個 d,若干個 e 即...