• 冒泡排序


    '''
    冒泡排序算法的运作如下:
        比较相邻的元素。如果第一个比第二个大(升序),就交换他们两个。
        对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。最后的元素会是最大的数。
        针对所有的元素重复以上的步骤,除了最后一个。
        持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
    '''
    
    def bubble_sort(lst):
        for j in range(len(lst)-1,1,-1):
            # j 为比较的次数,不断减少。每进行一次排序,最后面的 "最大的数" 就不断增加,所以需要排序的次数就越来越少
            for i in range(j):
                # 不包括j
                if lst[i] > lst[i+1]:#如果前面的元素大于后面的元素
                    # 不断将最大的元素向后移
                    lst[i],lst[i+1] = lst[i+1],lst[i]
    
    li = [54,26,93,17,77,31,44,55,20]
    bubble_sort(li)
    print(li)

    2020-05-07

  • 相关阅读:
    软件git装的过程
    深入理解多态
    深入.net框架
    深入C#数据类型
    JavaScript 性能优化(2)
    JAVA: 集合框架
    JavaScript 性能优化(1)
    JavaScript 常用进度条
    Java: 随机生成字符串并排序
    JAVA: String详解
  • 原文地址:https://www.cnblogs.com/hany-postq473111315/p/12845219.html
Copyright © 2020-2023  润新知