一、冒泡排序(Bubble Sort)
1.基本思想
2.动图演示
3.算法描述
4.代码实现
二、快速排序(Quick Sort)☆
1.基本思想
2.动图演示
3.算法描述
4.代码实现
三、选择排序(Selection Sort)
1.基本思想
2.动图演示
3.算法描述
4.代码实现
四、堆排序(Heap Sort)
1.基本思想
2.动图演示
3.算法描述
4.代码实现
五、插入排序(Insertion Sort)
在要排序的一组数中,假定前n-1个数已经排好序,将第n个数插到前面的有序数列中,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺序。
2.动图演示
3.算法描述
4.代码实现
优化
使用哨兵
折半插入排序
六、希尔排序(Shell Sort)
1.基本思想
2.动图演示
3.算法描述
4.代码实现
七、归并排序(Merge Sort)
1.基本思想
2.动图演示
3.算法描述
4.代码实现
八、基数排序(Radix Sort)
1.基本思想
2.动图演示
3.算法描述
4.代码实现
九、计数排序(Counting sort)
1.基本思想
2.动图演示
3.算法描述
4.代码实现
十、桶排序(Bucket sorting)
1.基本思想
2.动图演示
3.算法描述
4.代码实现
十一、外部排序小专题
1.外部排序原理
2.外部排序开销及应用场景
2.多路归并(提高外排效率)
3.多路平衡归并与多路归并区别
4.败者树(优化关键字对比次数)
5.置换-选择排序(优化初始构造归并段的数量)
6.最佳归并树(本质:多元哈弗曼树)
十二、根据算法的特性划分
1.根据算法是否稳定划分
2.根据内/外部排序划分
3.初始序列对算法有影响
4.是否是比较型
总结
附录
排序算法学习工具:usf算法动画演示
参考链接:https://blog.csdn.net/apple_51931783/article/details/134647970