• 算法


    有a、b两个变量,在不引入第三个变量的情况下,交换a、b的值

    a = a + b
    b = a - b
    a = a - b
    

    排序

    选择排序

    首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置
    然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾
    以此类推,直到所有元素均排序完毕

    遍历序列,拿第一个数和后面所有数比较,得出最小的数
    把这个最小的数和第一个数位置交换
    拿第二个数 ... 以此类推

    def selection_sort(l):
        count = len(l)
        for i in range(0, count):
            minimum = i
            for j in range(i + 1, count):
                if l[minimum] > l[j]:
                    minimum = j
            l[i], l[minimum] = l[minimum], l[i]
    

    冒泡排序

    它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来
    走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成

    遍历序列,拿第一个车数和后面所有数比较一遍,第一个数比它大就和它交换位置
    这样同样会得出最小的数放在第一个数的位置
    拿第二个数 ... 以此类推

    def bubble_sort(l):
        count = len(l)
        for i in range(0, count):
            for j in range(i + 1, count):
                if l[i] > l[j]:
                    l[i], l[j] = l[j], l[i]
    
  • 相关阅读:
    sqlserver监控体系
    使SQL用户只能看到自己拥有权限的库
    存储过程版本控制-DDL触发器
    查看剩余执行时间
    迁移数据库文件位置
    sublime使用Package Control不能正常使用的解决办法
    未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序的处理方式
    1770Special Experiment
    1848Tree
    1322Chocolate
  • 原文地址:https://www.cnblogs.com/xb21/p/8386040.html
Copyright © 2020-2023  润新知