码迷,mamicode.com
首页 > 其他好文 > 详细

704. 二分查找

时间:2020-04-22 00:33:01      阅读:81      评论:0      收藏:0      [点我收藏+]

标签:http   elf   div   代码   self   二分   size   ret   targe   

技术图片

 

 技术图片

 

 三种写法都过。

代码一:

 1 class Solution(object):
 2     def search(self, nums, target):
 3         """
 4         :type nums: List[int]
 5         :type target: int
 6         :rtype: int
 7         """
 8         if target in nums:
 9             return nums.index(target)
10         else:
11             return -1

代码二:

 1 class Solution(object):
 2     def search(self, nums, target):
 3         """
 4         :type nums: List[int]
 5         :type target: int
 6         :rtype: int
 7         """
 8         i, j = 0, len(nums)-1
 9 
10         while i <= j:
11             mid = int((i+j) / 2)
12             if nums[mid] == target:
13                 return mid
14             elif nums[mid] < target:
15                 i = mid+1
16             else:
17                 j = mid-1
18         return -1

代码三:

 1 class Solution(object):
 2     def search(self, nums, target):
 3         """
 4         :type nums: List[int]
 5         :type target: int
 6         :rtype: int
 7         """
 8         i, j = 0, len(nums)-1
 9         if i == j and nums[i] == target:
10             return i
11         while i <= j:
12             mid = i + int((j - i) / 2)
13             if nums[mid] == target:
14                 return mid
15             elif nums[mid] < target:
16                 i = mid+1
17             else:
18                 j = mid-1
19         return -1

 

704. 二分查找

标签:http   elf   div   代码   self   二分   size   ret   targe   

原文地址:https://www.cnblogs.com/panweiwei/p/12748642.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!