- 9
- 0
- 约1.06万字
- 约 54页
- 2017-12-20 发布于江苏
- 举报
排序——将一个数据元素(或记录)的任意序列,重新排列成
排序——将一个数据元素(或记录)的任意序列,重新排列成一个按关键字有序的序列。 排序分类 按待排序记录所在位置 内部排序:待排序记录存放在内存 外部排序:排序过程中需对外存进行访问的排序 按排序依据原则 插入排序:直接插入排序、折半插入排序、希尔排序 交换排序:冒泡排序、快速排序 选择排序:简单选择排序、堆排序 归并排序:2-路归并排序 基数排序 按排序所需工作量 简单的排序方法:T(n)=O(n2) 先进的排序方法:T(n)=O(logn) 基数排序:T(n)=O(d.n) 排序基本操作 比较两个关键字大小 将记录从一个位置移动到另一个位置 稳定排序:具有相同排序码的记录,排序前后的相对位置保持不变。 不稳定排序 9.1 插入排序 直接插入排序 排序过程:整个排序过程为n-1趟插入,即先将序列中第1个记录看成是一个有序子序列,然后从第2个记录开始,逐个进行插入,直至整个序列有序 折半插入排序 排序过程:用折半查找方法确定插入位置的排序。 算法描述 希尔排序(缩小增量法) 排序过程:先取一个正整数d1n,把所有相隔d1的记录放一组,组内进行直接插入排序;然后取d2d1,重复上述分组和排序操作;直至di=1,即所有记录放进一个组中排序为止 算法描述 9.2 交换排序 冒泡排序 排序过程 将第一个记录的关键字与第二个记录的关键字进行比较,若为逆序r[1].keyr[2].key,则交
原创力文档

文档评论(0)