当前位置: 首页 > 后端技术 > Python

力扣-面试题11.数组的最小旋转数【剑指offer】【Python】

时间:2023-03-25 23:17:23 Python

题李扣将一个数组的前几个元素移动到数组的末尾,我们称之为数组的旋转。输入一个按升序排列的数组的旋转,输出旋转后数组的最小元素。例如数组[3,4,5,1,2]是[1,2,3,4,5]的旋转,最小值为1。例1:输入:[3,4,5,1,2]输出:1例2:输入:[2,2,2,0,1]输出:0注:本题与主站154题相同:https://leetcode-cn.com/probl...思路二分查找代码Python3classSolution:defminArray(self,numbers:List[int])->int:left=0right=len(numbers)-1#注意这里和labuladong模板不同,循环是leftnumbers[right]:left=mid+1#因为包含重复,所以右边界变窄#这个不能和上面合并,必须单独判断,例如:[3,3,1,3],无法判断是在左边还是右边else:right-=1returnnumbers[left]linktoGitHub