农场里有一群牛,每头牛都有一个身高,这些身高按照从高到低的顺序排列在一个 n 的牛棚中。为了混乱猎豹的视线,农场主人决定旋转牛群的排列顺序,也就是将牛棚中的牛按照一定的次数向后旋转。例如,原数组 heights = [7,6,5,4,3,2,1] 在变化后可能得到: 若旋转 4 次,则可以得到 [4,3,2,1,7,6,5] 若旋转 7 次,则可以得到 [7,6,5,4,3,2,1] 注意,数组 [a[0], a[1], a[2], ..., a[n-1]] 旋转一次 的结果为数组 [a[n-1], a[0], a[1], a[2], ..., a[n-2]] 。 请你找出并返回数组中的 最小元素 。 你必须设计一个时间复杂度为 O(log n) 的算法解决此问题。
示例1

输入

[5,4,3,2,1,7,6]

输出

1
示例2

输入

[2,1,7,6,5,4,3]

输出

1
示例3

输入

[17,15,13,11]

输出

11

备注:
n == heights.length1 0 heights 中的所有整数 互不相同heights 原来是一个降序排序的数组,并进行了 1 至 k 次旋转,k未知
加载中...