二分法小結

2022-08-13 20:03:17 字數 847 閱讀 3491

二分法是乙個神奇的東西,弄了半天,總算知道怎樣合理的去使用了

常規的二分法正確的時候返回正確的下標或值,在找不到的情況下,返回比要查詢的數稍大點的數(已排序),

要查詢的區間:

"<< "

2 6 7

"<

15 cout << "

要查詢的數:4

"<

16 cout << a[i] <

17 }

而另外的一種二分,可使返回正確的值,若無,則返回盡量小的數

1 #include2

using

namespace

std;34

intmain()5;

7int i = 0, j = 2;8

while (i < j-1)9

14 cout << "

要查詢的區間:

"<< "

2 6 7

"<

15 cout << "

要查詢的數:4

"<

16 cout << a[i] <

17 }

(兩種方法的不同之處在於跳出迴圈的條件不同)

二分法小結

乙個基礎模板 註解 1 mid的表示式之所以不寫成mid start end 2 是因為start end值可能溢位,而mid start end start 2絕對沒有溢位的可能,這是一種嚴謹。2 while裡面的條件是 start 1 二分法模板的四點要素 start 1 start end s...

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 ...