function index(arr,target){
let start = 0;
let end = arr.length - 1;
while(start <= end){
let mid = Math.floor((start + end) / 2);
if(arr[mid] === target){
return mid;
}else if(arr[mid] > target){
end = mid - 1;
}else if(arr[mid] < target){
start = mid + 1;
}
}
}
我感觉呢,还是不要背代码之类的,每次遇到类似问题就固化了思想。之前字节面试问了二分法怎么实现,我满脑海都是背出来的快排。
待会顺便写完快排就睡觉吧。