二分(折半)查找算法

public static int binarySearch(int[] a, int num){   
      
        int low = 0;   
        int high = a.length-1;   
        while(low <= high) {   
            int middle = (low + high)/2;   
            if(num== a[middle]) {   
                return middle;   
            }else if(num<a[middle]) {   
                high = middle - 1;   
            }else {   
                low = middle + 1;   
            }  
        }  
        return -1;  
   }  
原文地址:https://www.cnblogs.com/lxcmyf/p/7220908.html