JZ11 旋转数组的最小数字
JZ11 旋转数组的最小数字
描述
有一个长度为 n 的非降序数组,比如[1,2,3,4,5],将它进行旋转,即把一个数组最开始的若干个元素搬到数组的末尾,变成一个旋转数组,比如变成了[3,4,5,1,2],或者[4,5,1,2,3]这样的。请问,给定这样一个旋转数组,求数组中的最小值。
数据范围:$1≤n≤10000$,数组中任意元素的值: $0≤val≤10000$
要求:空间复杂度:$O(1)$ ,时间复杂度:$O(logn)$
示例1
1 | 输入:[3,4,5,1,2] |
示例2
1 | 输入:[3,100,200,3] |
题解
初见思路:首先从头开始找,往后找找到一个比当前小的,然后这个就是最小值。
代码
1 | class Solution { |