二分查找算法Java

121 阅读1分钟
      public int binarySearch(int[] nums,int k) {
            int low = 0;
            int high = arr.length-1;
            while(low<=high) {
                int middle = (low+high)/2;
                if (arr[middle] == des) {
                    return middle;
                }else if (arr[middle]<des) {
                    low = middle+1;
                }else {
                    high = middle-1;
                }
            }
            return -1;
        }
        
      public void main() {
        int[] nums = {1,2,3,4,5,6,7,8,11,15,17};
        int k = 4;
        System.out.println(binarySearch(nums, k));
      }
 

image.png