冒泡排序 冒泡排序是大多数人学的第一种排序算法,在面试中,也是问的最多的一种,有时候还要求手写排序代码,因为比较简单。 冒泡排序属于交换类的排序算法。 一、算法介绍 现在有一堆乱序的数,比如: 。 第一轮迭代:从第一个数开始,依次比较相邻的两个数,如果前面一个数比后面一个数大,那么交换位置,直到处理 ...
分类:
编程语言 时间:
2020-04-18 13:35:43
阅读次数:
55
https://www.expressjs.com.cn/starter/installing.html 1.创建一个文件夹 2.在cmd命令下,进入当前文件夹 3.初始化npm 环境(否则直接下载模块会报错)npm init -y 4.安装express模块, generator生成器npm i ...
分类:
Web程序 时间:
2020-04-15 21:14:17
阅读次数:
94
插入排序 插入排序 思路: 需要将原始序列分成两部分:有序部分,无序部分 将无序部分中的元素逐一插入到有序部分中 注意:初始情况下,有序部分为乱序序列的第一个元素,无序部分为乱序序列的n 1个元素 乱序序列:[3,8,5,7,6] [3,,,,8,5,7,6]: 3就是初始的有序部分,8,5,7,6 ...
分类:
编程语言 时间:
2020-04-12 20:54:54
阅读次数:
65
选择排序 def pao1(alist): x = 1 while x alist[i+1]: 如果前面的元素大于后面的元素,交换两个元素的位置 alist[i],alist[i+1] = alist[i+1],alist[i]` 选择排序是遍历整个列表,设置一个index索引为0,每次用该列表的索 ...
分类:
编程语言 时间:
2020-04-12 14:42:20
阅读次数:
58
defer 和 async 在网络读取(下载)这块儿是一样的,都是异步的(相较于 HTML 解析) 它俩的差别在于脚本下载完之后何时执行,显然 defer 是最接近我们对于应用脚本加载和执行的要求的 关于 defer,此图未尽之处在于它是按照加载顺序执行脚本的,这一点要善加利用 async 则是一个 ...
分类:
其他好文 时间:
2020-04-09 12:52:18
阅读次数:
63
Linux 内核参数 内核参数设置 Linux 操作系统修改内核参数有以下三种方式: 1. 修改 文件; 在文件中加入配置项,格式为 ,保存修改后的文件,执行命令 加载新配置。 2. 使用 sysctl 命令临时修改; 如: 3. 直接修改 /proc/sys/ 目录中的文件。 如: 注意:第一种方 ...
分类:
系统相关 时间:
2020-04-07 18:32:22
阅读次数:
120
ICMP协议的概念 ICMP(因特网控制报文协议 Internet Control Message Protocol)是一种面向无连接的协议,用于传输出错报告控制信息。IP提供的尽力数据包通信服务无连接服务,而并不能解决网络低层的数据报丢失、重复、延迟或乱序等问题,TCP在IP基础建立有连接服务解决 ...
分类:
其他好文 时间:
2020-03-31 12:35:42
阅读次数:
80
用堆排序只能过50%, TLE警告 时间复杂度分析 堆排序过程中是直接将数据当作乱序处理, 但乘法表是含有一定的顺序信息的, 条件比完全乱序强, 所以需要一个能把顺序信息用起来的方法 堆排序$(n m)log(n m)+klog(n m)=(n m)log(n m)$ ...
分类:
其他好文 时间:
2020-03-29 10:38:57
阅读次数:
63
最近看了一篇非常有趣的文章:关于JavaScript的数组随机排序,其作者为oldj前辈。文中指出我们用来“将一个数组随机排序”的经典写法所存在的问题,获益匪浅。 本文将以更加详尽的材料和更多样的code demo进行阐述。并尝试用“Fisher–Yates shuffle”洗牌算法进行终极解答。 ...
分类:
编程语言 时间:
2020-03-18 09:41:56
阅读次数:
58
P1966 火柴排队 求逆序对+数学 题意描述 有 a,b 两个数列,它们的距离为∑(ai bi)2。 每列中相邻的两个数均可进行交换,求至少交换多少次,可以使 a,b 的距离最短。 看不懂你 "这题" 就别做了。 算法分析 首先你应该知道:顺序和≥乱序和≥逆序和(好像没有什么关系) 然后你应该知道 ...
分类:
其他好文 时间:
2020-03-07 21:08:27
阅读次数:
75