File tree Expand file tree Collapse file tree 1 file changed +40
-4
lines changed
Expand file tree Collapse file tree 1 file changed +40
-4
lines changed Original file line number Diff line number Diff line change @@ -235,8 +235,6 @@ class Solution:
235235 return - 1
236236```
237237
238-
239-
240238** Go:**
241239
242240(版本一)左闭右闭区间
@@ -279,7 +277,7 @@ func search(nums []int, target int) int {
279277}
280278```
281279
282- ** javaScript :**
280+ ** JavaScript :**
283281
284282``` js
285283
@@ -316,7 +314,45 @@ var search = function(nums, target) {
316314
317315```
318316
319-
317+ ** Ruby:**
318+
319+ ``` ruby
320+ # (版本一)左闭右闭区间
321+
322+ def search (nums , target )
323+ left, right = 0 , nums.length - 1
324+ while left <= right # 由于定义target在一个在左闭右闭的区间里,因此极限情况下存在left==right
325+ middle = (left + right) / 2
326+ if nums[middle] > target
327+ right = middle - 1
328+ elsif nums[middle] < target
329+ left = middle + 1
330+ else
331+ return middle # return兼具返回与跳出循环的作用
332+ end
333+ end
334+ - 1
335+ end
336+
337+ # (版本二)左闭右开区间
338+
339+ def search (nums , target )
340+ left, right = 0 , nums.length - 1
341+ while left < right # 由于定义target在一个在左闭右开的区间里,因此极限情况下right=left+1
342+ middle = (left + right) / 2
343+ if nums[middle] > target
344+ right = middle
345+ elsif nums[middle] < target
346+ left = middle + 1
347+ else
348+ return middle
349+ end
350+ end
351+ - 1
352+ end
353+
354+ p search(nums,target)
355+ ```
320356
321357
322358
You can’t perform that action at this time.
0 commit comments