left = 0right = length of nums - 1while left <= right:    mid = (left + right) / 2    if nums[mid] == target:        return mid    if nums[left] <= nums[mid]:        if nums[left] <= target < nums[mid]:            right = mid - 1        else:            left = mid + 1    else:        if nums[mid] < target <= nums[right]:            left = mid + 1        else:            right = mid - 1return -1

Question

left = 0
right = length of nums - 1
while left <= right:
    mid = (left + right) / 2
    if nums[mid] == target:
        return mid
    if nums[left] <= nums[mid]:
        if nums[left] <= target < nums[mid]:
            right = mid - 1
        else:
            left = mid + 1
    else:
        if nums[mid] < target <= nums[right]:
            left = mid + 1
        else:
            right = mid - 1
return -1

Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer