最近被考到一个简单算法 - 冒泡排序,仿佛是大三的时候学过,大概原理还记得一点,现在调试了一下把完整代码写出来了,记录一下。
#!/usr/bin/env python
# -*- coding:utf-8 -*-
def bubble_sort(list):
len_of_list = len(list)
while len_of_list > 0:
for i in range(len_of_list-1):
if list[i] > list[i+1]: # 如果发现前一个比后一个大,则做交换
list[i+1] = list[i] + list[i+1]
list[i] = list[i+1] - list[i]
list[i+1] = list[i+1] - list[i]
len_of_list -= 1
print list
if __name__ == '__main__':
a_list = [3, 1, 0, 3, 5, 19, 20, 4, 78, 12, 9, 100, -5, -9]
bubble_sort(a_list)