抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

Python学习笔记:几种奇妙的排序算法

冒泡排序算法

1
2
3
4
5
6
7
def bubble_sort(lst):
n = len(lst)
for y in range(n-1, 0, -1):
for x in range(y):
if lst[x] > lst[x+1]:
lst[x], lst[x+1] = lst[x+1], lst[x]
return lst

快速排序算法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
def quick_sort(lst):
if len(lst) <= 1:
return lst

p = lst[0]
left = []
right = []

for x in lst[1:]:
if x < p:
left.append(x)
else:
right.append(x)
return quick_sort(left) + [p] + quick_sort(right)

评论