classSolution:defsearch(self, nums, target):"""
:type nums: List[int]
:type target: int
:rtype: bool
"""
pol =len(nums)-1while pol>0and nums[pol]>= nums[pol-1]:
pol-=1
ans = self.index_serach(target,nums[:pol])if ans ==-1:
ans = self.index_serach(target,nums[pol:])if ans !=-1:returnTrueelse:returnFalseelse:returnTruedefindex_serach(self,target,nums):
l,r =0,len(nums)-1
index =-1while l<=r:
mid =(l+r)//2if nums[mid]< target:
l = mid+1elif nums[mid]> target:
r = mid-1else:
index = mid
breakreturn index