二分查詢法的實現(基於C)

2021-10-18 11:40:27 字數 1423 閱讀 2533

在乙個長度為t的順序陣列中,尋找目標為target的值,找到則返回該值在資料中的位置,否則返回-1.

二分查詢法通過對陣列的範圍跟蹤來解決問題。開始時,範圍是整個陣列,通過將範圍中間的元素與目標target值比較並丟棄一半範圍,範圍被縮小一半,這個過程將一直持續,直到target值被發現,或那個能夠包含target範圍已為空。

舉例說明:在乙個長度為7的順序陣列中尋找目標值為7的二分查詢法圖例

第一步:比較陣列中間元素和目標值target

第二步:範圍縮小一半,繼續比較縮小後的陣列中間元素和目標值target

第三步:範圍縮小一半,繼續比較縮小後的陣列中間元素和目標值target

參考文獻【**之美】

二分查詢法(C 實現)

二分查詢法的思想非常簡單,在一組已經完成排序的資料 array 中,如果需要查詢某一特定資料 value 是否存在的時候,設定兩個上下限 max,min 開始的時候在陣列的最前和最後,把需要查詢的值跟這兩個位置的中間位置資料 array max min 2 進行對比,如果value array mi...

二分查詢法實現

查詢分為靜態查詢和動態查詢 靜態查詢主要包括順序查詢和二分查詢 折半查詢 順序查詢是我們常用的一種查詢方式,它有順序表的順序查詢和鍊錶的順序查詢,這兩部分在前面學習線性表時都有學習。二分查詢是一種針對有序表進行的查詢,其效率高,比較次數少。動態查詢是指可以對錶進行刪除和插入操作。主要以二叉排序樹為主...

二分法查詢是基於有序 python實現二分查詢演算法

二分查詢演算法,是常見的搜尋演算法之一,適用於有序的序列,通過將序列不斷的對折分為區間,從而確定查詢值是否存在,優點是速度快。首先,假設表中元素是按公升序排列,將表中間位置記錄的關鍵字與查詢關鍵字比較,如果兩者相等,則查詢成功 否則利用中間位置記錄將表分成前 後兩個子表,如果中間位置記錄的關鍵字大於...