python:求解数组最⼤最⼩值的两种⽅法源代码:
#求数组最⼤值
def F(n):
py()
def max1(m):
for i in range(0,len(m)-1):
if m[i]>=m[i+1]:
m[i+1]=m[i]
return m[len(m)-1]
def min1(n):
for i in range(0,len(n)-1):
if n[i]<=n[i+1]:
n[i+1]=n[i]
return n[len(n)-1]
print('该数组最⼤值和最⼩值是:',max1(m),min1(n))
F([4,6,2,1,9,8,7,3])
#分治算法,结合递归⽅法。
#该函数的功能是
def get(arr,left,right):
if len(arr)==0:
return -1
if right-left<=1:
if arr[left]>=arr[right]:
return arr[left]
return arr[right]
#该部分功能是返回-1或两个数的⼩组中的最⼤值
middle=int((right-left)/2+left)
Left=get(arr,left,middle)源代码大电影
Right=get(arr,middle+1,right)
#递归⽅法:⼀直分组,直到分层两数⼀组。
if Left>=Right:
return Left
else:
return Right
arr=[3,7,2,1,8,5]
max1=get(arr,0,5)
print('最⼤值:',max1)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论