最近被考到一个简单算法 - 冒泡排序,仿佛是大三的时候学过,大概原理还记得一点,现在调试了一下把完整代码写出来了,记录一下。
#!/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)

本文回顾了冒泡排序算法的基本原理,并提供了一个Python实现的例子。该算法通过重复遍历要排序的数列,比较每对相邻项并交换顺序不当的元素来工作。
674

被折叠的 条评论
为什么被折叠?



