704. 二分查找
Posted panweiwei
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了704. 二分查找相关的知识,希望对你有一定的参考价值。
三种写法都过。
代码一:
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. 二分查找的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode第3天 - 704. 二分查找 | 35. 搜索插入位置
代码随想录算法训练营第一天 | 704. 二分查找27. 移除元素