题解 | #归并排序# Python3
归并排序
https://www.nowcoder.com/practice/23ed40416d9c4c72816edb12daa3bdff
def merge(left,right): res=[] i,j = 0,0 while i<len(left) and j<len(right): if left[i]<=right[j]: res.append(left[i]) i+=1 else: res.append(right[j]) j+=1 res+=left[i:] res+=right[j:] return res def merge_sort(nums): if len(nums)<=1: return nums mid=len(nums)//2 left=merge_sort(nums[:mid]) right=merge_sort(nums[mid:]) return merge(left,right) if __name__=="__main__": nums=list(map(int,input().strip('[').strip(']').split(','))) print(merge_sort(nums)) 很常规的归并排序 就是输入太坑 整半天!! nums=list(map(int,input().strip('[').strip(']').split(',')))