7.26-javascript

折半查找:数据必须有序

//数组定义

let arr1 = [1,2,3,4,5]; //用字面量定义数组
let arr2 = new Array(1,2,3,4,5); //用字面量定义数组

let arr3 = new Array(10); //定义有10个元素的数组,初值是 undefine
let arr6 = [10]; //字面量定义只有一个元素的数组,值是10

let arr4 = new Array(); //定义一个空数组
let arr5 = [] ; //定义一个空数组
 
//折半查找的源代码
折半查找的必要条件:有序
let target = 7;
let arr2 = [1,2,3,4,5,6,7,8,9];
let start = 0;
let end = arr2.length - 1;

let mid = parseInt((start + end) / 2);
while(start <= end){
    mid = parseInt((start + end) / 2);
    if(arr2[mid] < target){
        //收缩起点
        start = mid + 1;
    }else if(arr2[mid] > target){
        //收缩终点
        end = mid - 1;

    }else{
        //正好
        console.log(mid);
        break;
    }
}
posted @ 2021-07-26 17:14  fugin9527  阅读(34)  评论(0)    收藏  举报