Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Solution:
- def search(self, nums: List[int], target: int) -> int:
- left = 0
- right = len(nums) - 1
- while(left <= right):
- mid = left + (right - left)//2
- # Base condition
- if nums[mid] == target:
- return mid
- # check which portion of sorted array you lie in
- # left sorted array
- if nums[left] <= nums[mid]:
- if nums[left] <= target < nums[mid]:
- right = mid - 1
- else:
- left = mid + 1
- # right sorted array
- else:
- if nums[mid] < target <= nums[right]:
- left = mid + 1
- else:
- right = mid - 1
- return -1
Advertisement
Add Comment
Please, Sign In to add comment