- 问答
归并排序
- 2023-3-28 14:38:18 @
"""
=====
归并排序
=====
排序算法
排序演示网站"""
log = print
def merge(left,right):
result = []
while left and right:
if left[0] <= right[0]:
result.append(left.pop(0))
else:
result.append(right.pop(0))
while left:
result.append(left.pop(0))
while right:
result.append(right.pop(0))
return result
def merge_sort(number_list):
import math
if len(number_list) <= 2:
return number_list
middle = math.floor(len(number_list)/2)
left, right = number_list[0:middle], number_list[middle:]
return merge(merge_sort(left), merge_sort(right))
if __name__ == '__main__':
numbers = [29,10,14,13]
# numbers = list(map(int, input().split(',')))
log(merge_sort(numbers))
自己写的归并排序 为什么是[14, 13, 29, 10]
1 条评论
-
掉榜模式 (王靖翔) LV 7 @ 2023-6-12 9:26:31
math 可以定义在外面
- 1