js搜索算法——二分搜索

二分搜索算法就是折半查找,是一种效率较高的查找方法。前提条件是要查找的数组是有序的。算法的实现还是相对简单的:

      function binarySearch(arr,item){
            var min = 0;
            var max = arr.length-1;
            var mid;
            var ele;
            while(max>=min){
                mid = Math.floor((min+max)/2)
                ele = arr[mid];
                if(ele>item){
                    max = mid-1;
                }
                else if(ele<item){
                    min = mid + 1;
                }
                else{
                    return mid;
                }
            }
            return -1;
        }
       binarySearch([2,5,7,9,12,34,65,78,98,231,542],5);  //1

 

原文地址:https://www.cnblogs.com/renbo/p/8481247.html