外部内部排序,稳定性
来源:互联网 发布:仿糗事百科源码 编辑:程序博客网 时间:2024/05/21 17:08
1.外部与内部排序
外部排序指的是大文件的排序,当待排序的文件很大时,无法将整个文件的所有记录同时调入内存进行排序,只能将文件存放在外存,这种排称为外部排序。外部排序的过程主要是依据数据的内外存交换和“内部归并”两者结合起来实现的。
一般提到排序都是指内排序,比如快速排序,堆排序,归并排序等,所谓内排序就是可以在内存中完成的排序。RAM的访问速度大约是磁盘的25万倍,我们当然希望如果可以的话都是内排来完成。但对于大数据集来说,内存是远远不够的,这时候就涉及到外排序的知识了。
外部排序最常用的算法是多路归并排序,即将原文件分解成多个能够一次性装入内存的部分分别把每一部分调入内存完成排序。然后,对已经排序的子文件进行归并排序。
2.稳定性
假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,ri=rj,且ri在rj之前,而在排序后的序列中,ri仍在rj之前,则称这种排序算法是稳定的;否则称为不稳定的。
选择排序、快速排序、希尔排序、堆排序不是稳定的排序算法,而冒泡排序、插入排序、归并排序和基数排序是稳定的排序算法。
0 0
- 外部内部排序,稳定性
- 内部排序稳定性总结
- 内部排序算法的稳定性
- 八大内部排序以及稳定性
- 内部排序分类及稳定性
- 内部排序与外部排序
- 外部排序和内部排序
- 何为内部排序和外部排序?
- 内部排序算法的稳定性,时间复杂度和空间复杂度
- 排序稳定性
- 排序稳定性
- 排序稳定性
- 排序稳定性
- 排序算法稳定性
- 排序算法稳定性
- 排序算法稳定性
- 排序算法的稳定性
- 排序算法的稳定性
- Redhat 7.0使用CentOS 7 的Yum 网络源
- Android Wear 8 Using Speakers on Wearables 在手表上面使用扬声器
- Android Shape属性介绍[图文]
- Mongodb 稀疏索引 sparse
- 外包模式
- 外部内部排序,稳定性
- ubuntu 14.04 boot into text mode
- C++数据域封装
- [UVA227]Puzzle
- 程序员的年龄天花板
- 神经网络的表达式 机器学习基础(3)
- 如何解决VS2013中在汉字下面会出现红线的问题
- InnoDB的多版本一致性读的实现
- java 汉字转拼音