1. 程式人生 > >python二分排序演算法

python二分排序演算法

二分排序:二分排序是指利用二分法的思想對插入排序進行改進的一種插入排序演算法,不同於二叉排序,可以利用陣列的特點快速定位指定索引的元素。

二分排序演算法只對於事先排好序的演算法有效故在使用二分排序演算法之前要對樣本序列進行排序

排序後,開始進行二分查詢:

設定倆個標誌位:start和stop,取二者平均值和查詢數字進行比較,如果可以查到則有以下三種結果:

(1)mid所在位置數字大於待查詢數字,說明待查詢數字在左邊。移動stop指向,修改mid的值

(2)mid所在位置數字小於待查詢數字,說明待查詢數字在右邊。移動start指向,修改mid的值

(3)mid所在位置數字等於待查詢數字,則輸出該數字在樣本序列中的位置

若查詢無果,使用者也要輸出相應的提示資訊

程式碼實現: