我正在尝试实现二分查找,对于所有数字,除了极端情况,一切都正常:
const a = [1,2,3,4,5];
function findNum(arr, num) {
let start=0, end = arr.length-1, mid = Math.floor((start+end)/2);
while(start <= end) {
mid = Math.floor((start+end)/2);
if(mid===num) return true;
else if(mid > num) end = mid-1;
else start = mid+1;
}
return false;
}
console.log(findNum(a, 5));