题库练习 下面的程序运用分治算法寻找列表中的最大值。请将空格补全代码。#子问题规模小于或等于2时

A58402 | 下面的程序运用分治算法寻找列表中的最大值。请将空格补全代码。#子问题规模小于或等于2时

来源2022年
时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

下面的程序运用分治算法寻找列表中的最大值。请将空格补全代码。

#子问题规模小于或等于2时
def zui_da_zhi(a_list):
    if   ①   :
        if a_list[0]>=a_list[1]:
            most=a_list[0]
        else:
            most=a_list[1]
    else:
        most=a_list[0]
    return most
# 分治算法排序
def fen_zhi(init_list):
    n=len(init_list)
    if n<=2:                  #若问题规模小于或等于2,解决
        return zui_da_zhi(init_list)
    #分解(子问题规模为n/2)
    left_list,right_list=   ②   
    #递归,分治
    left_max,right_max=   ③   
    #合并
    return zui_da_zhi([left_max,right_max])

#测试数据
test_data=[12,25,4,47,69,5,4,6,37,89,21]
print('最大值为:',fen_zhi(test_data))
C++ 编辑器
输入
输出