添加0704二分查找 Ruby 版本

This commit is contained in:
reoooh
2021-07-28 23:57:26 +08:00
parent b8b8865c69
commit 31c9f09776

View File

@ -235,8 +235,6 @@ class Solution:
return -1
```
**Go**
(版本一)左闭右闭区间
@ -279,7 +277,7 @@ func search(nums []int, target int) int {
}
```
**javaScript:**
**JavaScript:**
```js
@ -316,7 +314,45 @@ var search = function(nums, target) {
```
**Ruby:**
```ruby
# (版本一)左闭右闭区间
def search(nums, target)
left, right = 0, nums.length - 1
while left <= right # 由于定义target在一个在左闭右闭的区间里因此极限情况下存在left==right
middle = (left + right) / 2
if nums[middle] > target
right = middle - 1
elsif nums[middle] < target
left = middle + 1
else
return middle # return兼具返回与跳出循环的作用
end
end
-1
end
# (版本二)左闭右开区间
def search(nums, target)
left, right = 0, nums.length - 1
while left < right # 由于定义target在一个在左闭右开的区间里因此极限情况下right=left+1
middle = (left + right) / 2
if nums[middle] > target
right = middle
elsif nums[middle] < target
left = middle + 1
else
return middle
end
end
-1
end
p search(nums,target)
```