用递归的方法获取一个list的最大值和最小值,return(最大值,最小值)
def list(L, start, end): ##假设一个边界L 给两个参数 start和end
if end-start <=2: ##假设
return (max(L[start], L[end]), min(L[start], L[end])) ##分别获取到分界线两边的最大值和最小值
max1, min1 = list(L, start, (start+end)//2) ##查询分界线前面的最大值最小值
max2, min2 = list(L, (start+end)//2+1, end) ##查询分界线后面的最大值最小值
return (max(max1, max2), min(min1, min2)) ##返回最大值和最小值
list1 = [11, 2, 13, 8, 3, 12, 9, 4]
print(list(list1, 0, len(list1)-1)) ##最后比较出来