一、leetcode地址
https://leetcode.com/problems/search-in-rotated-sorted-array/
二、问题描述
三、代码实现
语言:Python3
代码:
class Solution:
def search(self, nums: List[int], target: int) -> int:
if not nums:return -1
start = 0;end = len(nums)-1
if nums[start] == target:return start
if nums[end] == target:return end
while start <= end:
if end <= start+1:
return -1
mid = (start+end)//2
if nums[mid] == target:
return mid
elif nums[mid]<nums[start]:
if nums[mid]<target<nums[start]:
start = mid
else:
end = mid
else:
if nums[start]<target<nums[mid]:
end = mid
else:
start = mid
else:
return -1