[Medium] 33. Search in Rotated Sorted Array

Note: Leetcode questions moved to github page: https://robinali34.github.io/blog_leetcode/

Template in C++

Binary search on answer

int bs_on_answer(int left, int right) {
while (left <= right) {
int pivot = left + (right - left) / 2;
if (condition(pivot)) {
right = pivot + 1;
} else {
left = pivot + 1;
}
}
return -1;
}

Solution in C++

class Solution:
def search(self, nums: List[int], target: int) -> int:
left, right = 0, len(nums) - 1
while left <= right:
mid = left + (right - left) // 2
if nums[mid] == target:
return mid
# Subarry on mid's left is sorted
elif nums[mid] >= nums[left]:
if target >= nums[left] and target < nums[mid]:
right = mid - 1
else:
left = mid + 1
# Subarray on mid's right is sorted
else:
if target <= nums[right] and target > nums[mid]:
left = mid + 1
else:
right = mid - 1
return -1

Solution in Python

class Solution:
def search(self, nums: List[int], target: int) -> int:
left, right = 0, len(nums) - 1
while left <= right:
mid = left + (right - left) // 2
if nums[mid] == target:
return mid
# Subarry on mid's left is sorted
elif nums[mid] >= nums[left]:
if target >= nums[left] and target < nums[mid]:
right = mid - 1
else:
left = mid + 1
# Subarray on mid's right is sorted
else:
if target <= nums[right] and target > nums[mid]:
left = mid + 1
else:
right = mid - 1
return -1

24 responses to “[Medium] 33. Search in Rotated Sorted Array”

  1. diflucan generic cost without insurance

    diflucan generic cost without insurance

  2. dutasteride 0.5 mg cost

    dutasteride 0.5 mg cost

  3. prevacid over the counter canada

    prevacid over the counter canada

  4. zoloft tablets

    zoloft tablets

  5. levitra

    levitra

  6. doxycycline mono

    doxycycline mono

  7. lasix medicine for urine

    lasix medicine for urine

  8. tadalafil price comparison

    tadalafil price comparison

  9. vidalista cialis 60mg

    vidalista cialis 60mg

  10. viagra in dallas

    viagra in dallas

  11. cenforce d chemist warehouse

    cenforce d chemist warehouse

  12. vidalista 10 side effects

    vidalista 10 side effects

  13. flagyl cream for yeast infection

    flagyl cream for yeast infection

  14. flagyl pills for dogs

    flagyl pills for dogs

  15. bupropion brand name smoking

    bupropion brand name smoking

  16. minoxidil near me

    minoxidil near me

  17. ketoconazole dermatology overview

    ketoconazole dermatology overview

  18. terbinafine resource page

    terbinafine resource page

  19. ketoconazole cream for skin conditions

    ketoconazole cream for skin conditions

  20. terbinafine dosage expert overview

    terbinafine dosage expert overview

  21. ketoconazole shampoo comparison

    ketoconazole shampoo comparison

  22. terbinafine pharmacology

    terbinafine pharmacology

  23. toradol risks overview

    toradol risks overview

  24. toradol migraine information

    toradol migraine information