排序算法小结

简介: 排序算法小结

如下(仅为个人小结):

快速排序:左移找小,右移找大,以基为准,二分递归,重叠置基。
归并排序:拆分,辅助数组,二指针比较,一指针赋值。
多路归并排序:k路,将k个归并段完整读入内存。k直接决定了树中叶子节点的个数。
插入排序:分有序区和无序区,数组实现时,每插入需进行数据右移。
希尔排序:为插排的优化。以一定增量m=m/2,分组插排,至m=1。
堆排序:先整体构堆,再每次去掉最值前次堆得到的最值,再构堆,直到堆只剩一个节点。
基数排序(n位数,初始为1):循环,(按n入桶,按序出桶,n++;)。
AI 代码解读
目录
相关文章
【算法】二分算法——山脉数组的峰顶索引
【算法】二分算法——山脉数组的峰顶索引
【算法训练-排序算法 三】【排序应用】合并区间
【算法训练-排序算法 三】【排序应用】合并区间
105 0
|
10月前
|
常见的算法排序(2)
常见的算法排序(2)
70 3
[leetcode 324] 摆动排序 II 思维+排序
[leetcode 324] 摆动排序 II 思维+排序
93 0
算法之冒牌排序
冒泡排序算法及其优化算法
105 0
算法之冒牌排序
算法之排序5——希尔排序
依次比较待插入元素 i 和分组内另一个元素,就需要用到for循环语句;当h = 5 时,a[5]恰好是数组内第6个元素,也就是第一个待插入的元素,所以初始条件是 i = h,待插入的最后一个元素就是数组内最后一个元素,即终止条件为 i < a.length
147 0