zoukankan      html  css  js  c++  java
  • 快速排序-python

    冒泡:

    #冒泡排序
    def bubble_sort(lt):
        for i in range(len(lt)-1):         #外部循环,用来表示冒泡进行的次数
            for j in range(len(lt)-i-1):
            #内部循环,如果从下标为0的元素开始匹配,j下标一直到倒数第二个元素
                if lt[j] > lt[j+1]:
                    lt[j], lt[j+1] = lt[j+1], lt[j]
                    #上面两行代码-如果lt列表中下标为j的值大于下标为j+1的值,
                    #就调换位置,相当于lt[j] = lt[j+1], lt[j+1] = lt[j]
        print(lt)     #打印列表
    lt = [9, 8, 6, 4, 5, 1, 3, 10]    #首先建一个列表
    bubble_sort(lt)  #调用函数输出经过冒泡排序后的列表

    选择:

    #选择排序
    list1 = [12, 3, 6, 2, 5, 7, 8, 9] #首先定义一个列表
    def quick_sort(list1):
        for i in range(len(list1)-1): #默认从0下标开始
            x = i   #建立一个信号量
            for j in range(i+1, len(list1)):#从列表第i+1个元素开始
                if list1[x] > list1[j]:#一旦匹配到小于下标为i的元素
                    x = j
            list1[i], list1[x] = list1[x], list1[i]
            #将元素赋值给信号量x,依次循环,遇到更小的,继续交换元素
        print(list1)
    quick_sort(list1)

    快排:

     快排的复杂度分析:https://blog.csdn.net/u010429424/article/details/78068825

  • 相关阅读:
    按升序合并如下两个list, 并去除重复的元素
    python数据结构
    驼峰式命名改下划线命名
    求某个数出现的次数超过了总数的一半
    翻转字符串
    复习
    RESTful
    Flask wtforms
    数据库连接池(DBUtils)
    iOS
  • 原文地址:https://www.cnblogs.com/shengguorui/p/10707054.html
Copyright © 2011-2022 走看看