python学习笔记-Day04-第一部分(冒泡算法的实现)

需求:请按照从小到大对列表 [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


冒泡算法是一种比较简单的算法,其运行的方法如下:

  1. 比较相邻的元素,如果第一个比第二个大,则两者进行交换

  2. 每一对相邻的元素做同样的工作,第一对比较到最后一次,在完成第一次所有的元素比较的时候,最后的元素应该是 最大的数

  3. 重复以上操作,此时需要排除最后一个,因为其已经可以确定

  4. 持续每次对越来越少的元素进行以上操作,直到没有数字比较


http://timesnotes.blog.51cto.com/1079212/1715247

http://www.timesnotes.com/?p=101


你可能感兴趣的:(python,冒泡算法)