Suppose an array sorted in ascending order is rotated at some pivot unknown to you be- forehand. (i.e., [0, 1, 2, 4, 5, 6, 7] is an ascending array, then it might be rotated and become [4, 5, 6, 7, 0, 1, 2].) How to find the minimum of a rotated sorted array?
(Hint: All elements in the array are distinct.)
For example, the minimum of the rotated sorted array [4, 5, 6, 7, 0, 1, 2] is 0.
Please give an algorithm with O(logn) complexity, prove the correctness and analyze the complexity.