需求:请按照从小到大对列表 [13, 22, 6, 99, 11] 进行排序
思路:相邻两个值进行比较,将较大的值放在右侧,依次比较!实现:lst = [13, 22, 6, 99, 11, 1]length_lst = len(lst)for m in range(length_lst-1): for i in range(length_lst-m-1): if lst[i]>lst[i+1]: lst[i],lst[i+1] = lst[i+1],lst[i] # 两个变量交换值 print lst冒泡算法是一种比较简单的算法,其运行的方法如下:
比较相邻的元素,如果第一个比第二个大,则两者进行交换
每一对相邻的元素做同样的工作,第一对比较到最后一次,在完成第一次所有的元素比较的时候,最后的元素应该是 最大的数
重复以上操作,此时需要排除最后一个,因为其已经可以确定
持续每次对越来越少的元素进行以上操作,直到没有数字比较
http://www.timesnotes.com/?p=101