leetcode 第 704 题:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍

704. 二分查找

给定一个  n  个元素有序的(升序)整型数组  nums 和一个目标值  target  ,写一个函数搜索  nums  中的 target,如果目标值存在返回下标,否则返回 -

  • 来源:力扣(LeetCode)
  • 链接:力扣
  • 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var search = function (nums, isTarget) {
// 定义isTarget在左闭右闭的区间里,[left, right]
let right = nums.length - 1;
let left = 0;

while (left <= right) {
let middle = left + Math.floor((right - left) / 2);
if (nums[middle] > isTarget) {
right = middle - 1;
} else if (nums[middle] < isTarget) {
left = middle + 1;
} else {
return middle;
}
}
return -1;
};

编辑文章✏