asp源码 自助建站,网站建设 报告,WordPress国外音乐播放器,如何搜索关键词求数组局部最大值给定一个无重复元素的数组A[0…N-1]#xff0c;求找到一个该数组的局部最大值。规定#xff1a;在数组边界外的值无穷小。即#xff1a;A[0]#xff1e;A[-1]#xff0c;A[N-1] #xff1e;A[N]。显然#xff0c;遍历一遍可以找到全局最大值#xff0c…求数组局部最大值给定一个无重复元素的数组A[0…N-1]求找到一个该数组的局部最大值。规定在数组边界外的值无穷小。即A[0]A[-1]A[N-1] A[N]。显然遍历一遍可以找到全局最大值而全局最大值显然是局部最大值。可否有更快的办法算法描述使用索引left、right分别指向数组首尾。求中点 mid ( left right ) / 2A[mid]A[mid1]丢弃后半段rightmidA[mid1]A[mid]丢弃前半段leftmid1递归直至leftright时间复杂度为O(logN)。Python代码def local_maximum(li):if li is None:returnleft 0right len(li) - 1while left right:mid int((left right) / 2)if li[mid] li[mid 1]:right midelse:left mid 1return li[left]if __name__ __main__:li [1, 5, 2, 3, 4, 0]result local_maximum(li)print(result)输出结果4以上这篇Python 求数组局部最大值的实例就是小编分享给大家的全部内容了希望能给大家一个参考也希望大家多多支持聚米学院。