一、题目描述
二、解法
def minNumberInRotateArray(rotateArray):
# write code here
p1 = 0
p2 = len(rotateArray)-1
mid = p1
while rotateArray[p1]>=rotateArray[p2]:
if p2 - p1 ==1:
mid = p2
break
mid =(p1+p2)>>1
if rotateArray[mid]>=rotateArray[p1]:
p1 = mid
elif rotateArray[mid] <= rotateArray[p2]:
p2 =mid
return rotateArray[mid]
print(minNumberInRotateArray([5,1,2,3,4]))
#output:1

本文介绍了一种在旋转数组中查找最小元素的方法。通过定义两个指针,采用二分查找的方式,逐步缩小搜索范围,最终定位到最小值所在位置。该算法效率高,适用于处理大规模数据。
241

被折叠的 条评论
为什么被折叠?



