北京师范大学数据构教学资料 第9章——排序
140-* 若每个排序码有d位, 需要重复执行d趟“分配”与“收集”。每趟对n个元素进行“分配”,对radix个队列进行“收集”。总时间复杂度为 O(d(n+radix)) 若基数radix相同, 对于元素个数较多而排序码位数较少的情况, 使用链式基数排序较好。 基数排序需要增加n+2radix个附加链接指针。 基数排序是稳定的排序方法。 140-* 各种排序方法的比较 140-* 算法分析 设堆中有 n 个结点, 且 2k-1 ≤ n 2k, 则对应的完全二叉树有 k 层。在第 i 层上的结点数≤2i-1 (i = 1, …, k)。在第一个形成初始堆的 for 循环中对每一个非叶结点调用了一次堆调整算法siftDown(), 该循环所用的计算时间为: 其中, i 是层次编号, 2i-1 是第 i 层的最大结点数, (k-i)是第 i 层结点能够移动的最大距离。 140-* 第二个 for 循环中调用了n-1次siftDown()算法, 该循环的计算时间为O(nlog2n)。因此, 堆排序的时间复杂性为O(nlog2n)。 该算法的附加存储主要是在第二个 for 循环中用来执行元素交换时所用的一个临时元素。因此,该算法的空间复杂性为O(1)。 堆排序是一个不稳定的排序方法。 140-* 归并排序 (Merge Sort) 归并,是将两个或两个以上的有序表合并
您可能关注的文档
最近下载
- 人教版八年级下册数学期末测试卷(含答案).docx VIP
- QC∕T 663-2019 汽车空调用热力膨胀阀.pdf
- 2021年中华传统文化之端午节PPT课件.ppt VIP
- 苏教版小学科学新版三年级下册科学复习资料课件.pptx VIP
- T /CZGJ 002—2025 地方铁路400MHz数字无线通信系统技术条件.pdf VIP
- CASS绘图软件入门初级教程-超详细.doc VIP
- 2026年安徽省合肥市包河区中考三模数学试卷+答案.pdf VIP
- 云存储技术与应用练习题目及答案.docx VIP
- 检验科院感存在问题原因分析及整改措施3篇.docx VIP
- 【Cushman & Wakefield-2026研报】2026年亚太地区数据中心建设成本指南.pdf
原创力文档

文档评论(0)