python leetcode 33. Search in Rotated Sorted Array
阿新 • • 發佈:2018-12-08
二分查詢,注意if判斷和退出迴圈的條件
class Solution(object):
def search(self, nums, target):
"""
:type nums: List[int]
:type target: int
:rtype: int
"""
start = 0
end = len(nums) - 1
while start<=end:
mid = (start+end)//2
if nums[mid] == target:
return mid
if nums[mid]>=nums[start]:
if nums[mid]> target and nums[start]<=target:
end = mid-1
else:
start = mid + 1
if nums[mid]<nums[end] :
if nums[mid]< target and nums[end]>=target:
start = mid+1
else:
end = mid - 1
return -1