描述
請(qǐng)實(shí)現(xiàn)無(wú)重復(fù)數(shù)字的升序數(shù)組的二分查找
給定一個(gè) 元素升序的祭椰、無(wú)重復(fù)數(shù)字的整型數(shù)組 nums 和一個(gè)目標(biāo)值 target ,寫(xiě)一個(gè)函數(shù)搜索 nums 中的 target忽匈,如果目標(biāo)值存在返回下標(biāo)(下標(biāo)從 0 開(kāi)始)房午,否則返回 -1
demo1
輸入:[-1,0,3,4,6,10,13,14],13
返回:6
說(shuō)明:13 出現(xiàn)在nums中并且下標(biāo)為 6
demo2
輸入:[],3
返回:-1
說(shuō)明:nums為空,返回-1
實(shí)現(xiàn):
/**
* 代碼中的類名丹允、方法名郭厌、參數(shù)名已經(jīng)指定袋倔,請(qǐng)勿修改,直接返回方法規(guī)定的值即可
*
*
* @param nums int整型一維數(shù)組
* @param target int整型
* @return int整型
*/
function search( nums , target ) {
// write code here
let left = 0;
let right = nums.length-1;
while(left<=right){
let mid = Math.floor((left+right)/2)
console.log(mid)
if(nums[mid]==target){
return mid
}else if(nums[mid]<target){
left = mid+1
}else{
right = mid-1
}
}
return -1
}
module.exports = {
search : search
};