二分搜索(折半搜索)的實現

public class BinarySearch
{

    public static void main(String[] args)
    {
        int[] arr = new int[]{1,2,3,4,5};
        int key = 1;
        serach(arr, key);
    }

    
    public static int serach(int[] arr, int key)
    {
        int low = 0;
        int high = arr.length-1;
        int mid = (low + high)/2;
        
        while(low <= high)
        {
            mid = (low + high)/2;
            
            if(key == arr[mid])
            {
                return mid;
            }
            
            if(key < arr[mid])
            {
                high = mid - 1;
            }
            else 
            {
                low = mid + 1;
            }
        }
        
        return -1;
    }
}

發佈了26 篇原創文章 · 獲贊 8 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章