二分法查找下标
小于 1 分钟
二分法查找下标
这个问题是面试百度一面的题
假设数组已经排序
双指针实现
function findIndex(arr, target){
if(arr.length === 0) return -1
let start = 0, end = arr.length
let mind = Math.floor(end/2)
while(start < end){
if(arr[mind] < target){
start = mind + 1
mind = Math.floor((start+end)/2)
}else if(arr[mind] > target){
end = mind - 1
mind = Math.floor((start+end)/2)
}else{
return mind
}
}
return -1
}