1. 程式人生 > >LeetCode 33. Search in Rotated Sorted Array

LeetCode 33. Search in Rotated Sorted Array

inf .cn arr ima etc earch 要求 表示 部分

這道題目很經典,本人表示在面試時遇見過,要求復雜度為O(logn),很顯然必須用二分查找,但是旋轉導致數組並非從左到右都是有序的,因此我們在查找時需要做判斷,我們找打的終點左邊或者右邊至少一邊是有序的;如果中間數小於最右邊的數字,則右半段是有序的;如果中間數字大於最右邊數字,則左半段是有序的,參考下圖:

技術分享圖片 技術分享圖片

代碼如下:

部分圖片和思考來自於:

https://www.cnblogs.com/grandyang/p/4325648.html

https://www.cnblogs.com/cling-cling/p/4875961.html

LeetCode 33. Search in Rotated Sorted Array