您的位置:首页 > 编程语言 > Python开发

python--归并排序

2017-10-24 11:20 288 查看
***一直切分到只有2个元素的左右两边,然后对其进行排序合并,新生成的数组和其他切分的数据在进行排序合并。***
def sortIntegers2(self,array):
array_len = len(array)
if array_len<2:
return array
mid = array_len//2
left = self.sortIntegers2(array[:mid])
right = self.sortIntegers2(array[mid:])
res = []

while len(left)>0 and len(right)>0:
if left[0]<right[0]:
res.append(left.pop(0))
else:
res.append(right.pop(0))
if len(left)>0:
res.extend(left)
else:
res.extend(right)
return res
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: