JS 二分查找

二分搜索是著名的,也是不用目錄查字典的方法。spa

——先翻到一半,若是比想要的大值了,那麼就翻開前面的一半找,不然,翻開後面的一半,反覆操做。code

 

 

var group= [1,3,4,5,8]; 

function binarySearch(list,item) {//前提是已經排序了
    var start = 0;
    var end = list.length-1;
    while(start <= end){
        var mid = Math.floor((start+end)/2);
        if(list[mid] < item){
            start = mid+1;
        }else if (list[mid] > item){
            end = mid-1;
        }else{
            return mid;
        }
    }
    return -1;
};

binarySearch(group,3);
相關文章
相關標籤/搜索