2.0 排序算法
本文最后更新于 2024-07-06,文章内容可能已经过时。
2. 排序算法
一. 定义
排序也称排序算法(Sort Algorithm),排序是将一组数据,依指定的顺序进行排列的过程。
排序的分类:
- 内部排序:指将需要处理的所有数据都加载到内部存储器中进行排序。
2) 外部排序法:数据量过大,无法全部加载到内存中,需要借助外部存储进行排序。
常见的排序算法分类:
二. 算法的稳定性
假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,r[i]=r[j],且r[i]在r[j]之前,而在排序后的序列中,r[i]仍在r[j]之前,则称这种排序算法是稳定的;否则称为不稳定的
例如,序列5 7 5 4 1 9,若经过排序算法排完序后,原序列中2个5的相对前后顺序不被破坏(即第一个5仍在前面,第二个5仍在后面),那么该算法就是个稳定的排序算法,否则就是不稳定的排序算法。
常见的排序算法的稳定性
堆排序、快速排序、希尔排序、直接选择排序是不稳定的排序算法,而基数排序、冒泡排序、直接插入排序、折半插入排序、归并排序是稳定的排序算法。
三. 内排序和外排序
内排序:所有排序操作都在内存中完成;
外排序:由于数据太大,因此把数据放在磁盘中,而排序通过磁盘和内存的数据传输才能进行;
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 程序员Graypigeon
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果