mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-10 20:40:39 +08:00
添加 704. 二分查找 javaScript版本
This commit is contained in:
@ -254,6 +254,43 @@ func search(nums []int, target int) int {
|
||||
}
|
||||
```
|
||||
|
||||
javaScript
|
||||
|
||||
```js
|
||||
|
||||
// (版本一)左闭右闭区间
|
||||
|
||||
var search = function(nums, target) {
|
||||
let l = 0, r = nums.length - 1;
|
||||
// 区间 [l, r]
|
||||
while(l <= r) {
|
||||
let mid = (l + r) >> 1;
|
||||
if(nums[mid] === target) return mid;
|
||||
let isSmall = nums[mid] < target;
|
||||
l = isSmall ? mid + 1 : l;
|
||||
r = isSmall ? r : mid - 1;
|
||||
}
|
||||
return -1;
|
||||
};
|
||||
|
||||
// (版本二)左闭右开区间
|
||||
|
||||
var search = function(nums, target) {
|
||||
let l = 0, r = nums.length;
|
||||
// 区间 [l, r)
|
||||
while(l < r) {
|
||||
let mid = (l + r) >> 1;
|
||||
if(nums[mid] === target) return mid;
|
||||
let isSmall = nums[mid] < target;
|
||||
l = isSmall ? mid + 1 : l;
|
||||
// 所以 mid 不会被取到
|
||||
r = isSmall ? r : mid;
|
||||
}
|
||||
return -1;
|
||||
};
|
||||
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user