# 81 - Search in Rotated Sorted Array II
解法一 - 稍微修改的 binary search
一開始會很直覺想要用 #33 的做法直接套套看,不過如果直接做,會掛在
這種 case,原因是一開始 nums[mid] == nums[start],所以就無法分辨到底是 start-mid 有序還是 mid-end 有序。
一個很直覺的做法是,我們可以在遇到 nums[mid] == nums[start] 時,就把 start 往後增加。
這樣做的問題在於,如果整個 array 的值都一樣,那就得花 O(n) 的時間一直 start++
。不過這也是無法避免的,畢竟如果整個 array 的值都一樣,那就得看過每個 element 確定 target 不會是突然出現的一個 outlier。
Last updated