LeetCode / #二分查找 #数组
给定一个 n
个元素有序的(升序)整型数组 nums
和一个目标值 target
,写一个函数搜索 nums
中的 target
,如果目标值存在返回下标,否则返回 -1
。
使用二分查找法,数组需要有序排列。
/**
* @param {number[]} nums
* @param {number} target
* @return {number}
*/
var search = function(nums, target) {
let L = 0, R = nums.length - 1;
while (L <= R) {
const mid = Math.floor((R - L) / 2) + L;
const num = nums[mid];
if (target === num) {
return mid;
}
else if (target < num) {
R = mid - 1;
}
else {
L = mid + 1;
}
}
return -1;
};