我试图编写一个名为“küu max(input,output)”的函数,该函数接受两个Python数字列表,然后根据输出列表的大小,按升序将输入列表中最大的数字填充到输出列表中。在
测试是:input = [50, 30, 60, 10, 0, 40]
output = [0, 0, 0]
k_largest(input,output)
print(output)
回答:
^{pr2}$
这是我的代码:(merge_sort函数只是用来将输入列表按降序排序。)def k_largest(input, output):
merge_sort(input)
input = input[:len(output)]
input = input[::-1]
output = list(input)
print (output)
def merge_sort(list):
count = 0
for index in range(1, len(list)):
value = list[index]
i = index - 1
while i >= 0:
if value > list[i]:
list[i+1] = list[i]
list[i] = value
i = i - 1
count = count + 1
else:
break
出于某些原因,我的代码只是输出原始输出列表,而不是新的输出列表。在
例如:[0, 0, 0]
而不是:
^{pr2}$
我很确定还有一种更有效的方法。在