我是靠谱客的博主 心灵美超短裙,这篇文章主要介绍python:分治算法求解数组最大最小值的两种方法,现在分享给大家,希望可以做个参考。

分治算法:分治算法:分--治--合并,先将问题分成一个个小问题,然后逐个击破即可。常与其他算法结合.

此例中不断将数组从中间分组,直至分到子数组中只有两个数或一个数。

方法一:遍历方法

def F(n):
for i in range(len(n)):
for j in range(i+1,len(n)):
if n[i]>=n[j]:
d=n[i]
return d
print(F([1,7,9,2,3,4]))

方法二:分治算法

#分治算法
def F(n):
if len(n)==1 :
return n[0]
if len(n)==2:
if n[0]>=n[1]:
return n[0]
return n[1]
middle=int(len(n)/2)
m1=n[:middle]
m2=n[middle:]
x1=F(m1)
x2=F(m2)
if x1>=x2:
return x1
return x2
print(F([1,2,9,8,24,6,99]))


 

最后

以上就是心灵美超短裙最近收集整理的关于python:分治算法求解数组最大最小值的两种方法的全部内容,更多相关python:分治算法求解数组最大最小值内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(133)

评论列表共有 0 条评论

立即
投稿
返回
顶部