使用递归排序
2020-07-15 本文已影响0人
Odven
#!/usr/bin/env python
# _*_ coding:utf-8 _*_
import random
def def_sort(li):
"""
:param li: 要排序的列表
:return: 排序后的列表
"""
length = len(li)
if length <= 1: # 一个出口
return li
m = li[0]
li.pop(0)
before_list = list()
after_list = list()
for i in li:
if i >= m:
after_list.append(i)
else:
before_list.append(i)
return def_sort(before_list) + [m] + def_sort(after_list)
if __name__ == '__main__':
test_list = [random.randint(0, 100) for _ in range(20)]
print(test_list)
a = def_sort(test_list)
print(a)