计数排序
计数排序, 只适用于都是整数的列表如列表 list_datas = [88, 6, 57, 72, 60, 42, 83, 73, 48, 85]1、找到最小值和最大值, 分别为 6,882、建立计数器,从 {6:0, 7:0, 8:0, .... 88:0}
计数排序, 只适用于都是整数的列表如列表 list_datas = [88, 6, 57, 72, 60, 42, 83, 73, 48, 85]1、找到最小值和最大值, 分别为 6,882、建立计数器,从 {6:0, 7:0, 8:0, .... 88:0}
堆是具备以下特征的一种特殊二叉树: 1、是一棵完全二叉树 2、每个节点的值均小于(大于)或等于它的两个孩子节点(如果存在)的值。 3、树根节点(称为堆顶元素)的值最小(称为小顶堆)或最大(成为大顶堆)。 所以,堆顶元素(即第一个元素)必为最大值
希尔排序是对插入排序的优化。 插入排序在数据集”基本有序“时,效率最高,因此,希尔排序的优化思路便是先把数据集变成”基本有序“, 再进行插入排序。 那么如何变成”基本有序“? 1、对列表按一定的间隔(gap)进行分组,公式:gap = length
插入排序: 类似于打扑克 把列表[0]当作一个有序数列,将第2个数插入到序列中正确的位置, 把列表[0, 1]当作一个有序数列,将第3个数插入到序列中正确的位置 ...时间复杂度:O(n^2)剖析:插入到某个位置(index),就说明[ind
选择排序: 遍历列表,找出最小的那个数, 和初始位置调换顺序 时间复杂度:O(n^2)迭代实现:def select_sort_iteration(datas): length = len(datas) for i in range(0, length -
冒泡排序: 比较第1个数和第2数,如果第1个数大于第2个数,则调换他们的顺,即把更大的数放在后面, 对 第2个数 和第3数,重复此操作..., 最后,整个列表中最大的数就被换到了最后一个位置, 把数值从低位慢慢到高位的过程,比喻成冒泡。
快速排序:通过基准数,把小于它的数放在它的左边,大于它的放在它的右边。也可以称为“挖坑转移”排序:1、坑的理解对于需要进行排序的列表,我们假设在地上有n个连续的坑,每个坑中都放了一个数字,我们需要把数字调整成从小到大的顺序2、挖坑(找基准数)的理解从这些坑中,选出一个基准数,就相当于从坑中挖出数字,
使用 优先队这个需要使用到优先队列, 这是支持设置优先级的队列, 官网文档 提到, 在声明队列时, 设置 ("x-max-priority", 10)历史消息曾也是高优先级如何与新消息区分在消息属性中设置 时间戳, 并且设置一个新消息阈值, 超过这个时间就是历史消息, 这样,
安装语言包sudo apt-updatesudo apt-get install language-pack-zh-hans设置区域为中国sudo update-locale LANG=zh_CN.UTF-8
ls -l1v ./
sed -i 's/old-text/new-text/g' input.txt
FROM reg-ai.chehejia.com/system/ubuntu:22.04RUN printf "\deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted\n\deb http://mirrors.aliyun.