初學python 二分法查詢

2021-09-25 21:02:26 字數 747 閱讀 3548

#sort() 函式用於對原列表進行排序,如果指定引數,則使用比較函式指定的比較函式

#list.sort(cmp=none, key=none, reverse=false)

#cmp -- 可選引數, 如果指定了該引數會使用該引數的方法進行排序

#key -- 主要是用來進行比較的元素,只有乙個引數,具體的函式的引數就是取自於可迭代物件中,指定可迭代物件中的乙個元素來進行排序

#reverse -- 排序規則,reverse = true 降序, reverse = false 公升序(預設)

list_sample = [1, 7, 11, 22, 33, 44, 66, 78]

target_num = 44

low = 0

high = len(list_sample)-1

if target_num in list_sample:

print ('go on')

while true:

mean = int((low + high)/2)

print (mean)

if list_sample[mean] == target_num:

print (mean)

break

elif list_sample[mean] > target_num:

high = mean - 1

else:

low = mean + 1

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

Python 二分法查詢

二分法演算法原理 陣列是有序陣列,確定該期間的中間位置center 將查詢的值key與array center 比較。若相等,查詢成功返回此位置 否則確定新的查詢區域,繼續二分查詢。新區域的確定 如果key arrey center 則起始位置變為center 1,結束位置不變 如果key 每一次查...

python二分法查詢

二分查詢又稱折半查詢,優點是比較次數少,查詢速度快,平均效能好 其缺點是要求待查表為有序表,且插入刪除困難。因此,折半查詢方法適用於不經常變動而查詢頻繁的有序列表。首先,假設表中元素是按公升序排列,將表中間位置記錄的關鍵字與查詢關鍵字比較,如果兩者相等,則查詢成功 否則利用中間位置記錄將表分成前 後...