二分搜索是在區間搜索中出現的。它也被稱為半區間搜索,對數搜索,二進製斬。應用二分搜索時,需要對數據結構進行排序。在二分搜索中是將排序後的數組反複分為兩部分進行搜索,在搜索的關鍵項小於中間項的區間內進行搜索。這個過程一直發生,直到找到所搜索的元素或間隔為空。
在二分搜索中,隻進行一次比較就會忽略一半的元素,這是一種很好的搜索算法。
時間複雜度:最差情況- o (logn)
最佳情況- O(1)
算法:一個包含n個帶值元素的數組A
步驟1。L = 0, R = n-1。
步驟2。應用條件,如果L>R搜索失敗而終止。
步驟3。通過計算(L+R)/2來設置m(中間元素)
步驟4。m>k, R = m-1,執行步驟2。
第5步。如果m
步驟6。如果m=k,搜索就完成了;其他沒有發現這種元素。