第10章 排序

合集下载

第10章:群落的分类与排序

第10章:群落的分类与排序

天山山脉中段南北坡植物群落的CCA典范对应分析
通过对天山山脉中段南北坡植物群落与环境变量(土壤有机质 含量、土壤pH值大小和土壤中的C/N比)之间的CCA分析,发现植 物群落分布与上述3个土壤变量之间,有着很好的回归关系。 其群落排序轴与土壤pH值(pH)、土壤有机质含量(Y)和土壤中的 C/N比(C)的回归方程如下: 天山山脉中段北坡 Axis1=1.8075pH-1.365Y-0.0246C R2=0.9999 Axis2=0.9874pH+2.2308Y-1.7882C R2 =0.9999 天山山脉中段南坡 Axis1=1.6261pH-2.07Y-0.2073C R2 =0.9957 Axis2=-1.1369pH-0.9667Y+1.6647C R2=0.9999

排序的原理
通过降维,使原来 要用n 个原始数据描述的实体, 在尽量保留原数据特征的 条件下,利用最少数据 (排序坐标)来描述,有 利于揭示原始数据反映的 规律。
按属性排序实体称正分析, 或叫Q分析。 按实体去排序属性的叫逆 分析或叫R分析。
y e ●E ●A
a
●B
●D d
b ●C c
E A D C B
4.8 4 3.2 2.4 1.6 0.8 0 Euclidean
二、生物群落的排序
(一)排序的概念 1、定义:所谓排序,就是把一个地区内所调查的群落样地, 按照相似度 (similarity) 来排定位序, 从而分析各样地之间 及其与周围生境之间的相互关系。 2、类型: 1)直接排序,利用环境因素的排序,即以群落生境或其 中某一生态因子的变化,排定样地生境的序位,又称直接 梯度分析或者梯度分析。 2)间接排序,用植物群落本身属性排定群落样地的位序 (如种的出现与否,种的频度、盖度等),又称间接梯度分 析或者组成分析。

数据结构答案 第10章 排序学习与指导

数据结构答案 第10章 排序学习与指导

第10章排序10.1 知识点分析1.排序基本概念:(1)排序将数据元素的任意序列,重新排列成一个按关键字有序(递增或递减)的序列的过程称为排序。

(2)排序方法的稳定和不稳定若对任意的数据元素序列,使用某个排序方法,对它按关键字进行排序,若对原先具有相同键值元素间的位置关系,排序前与排序后保持一致,称此排序方法是稳定的;反之,则称为不稳定的。

(3)内排序整个排序过程都在内存进行的排序称为内排序,本书仅讨论内排序。

(4)外排序待排序的数据元素量大,以致内存一次不能容纳全部记录,在排序过程中需要对外存进行访问的排序称为外排序。

2.直接插入排序直接插入排序法是将一个记录插到已排序好的有序表中,从而得到一个新的,记录数增1的有序表。

3.二分插入排序二分插入排序法是用二分查找法在有序表中找到正确的插入位置,然后移动记录,空出插入位置,再进行插入的排序方法。

4.希尔排序希尔排序的基本思想是:先选取一个小于n的整数d1作为第一个增量,把待排序的数据分成d1个组,所有距离为d1的倍数的记录放在同一个组内,在各组内进行直接插入排序,每一趟排序会使数据更接近于有序。

然后,取第二个增量d2,d2< d1,重复进行上述分组和排序,直至所取的增量d i=1(其中d i< d i-1 < ……< d2< d1),即所有记录在同一组进行直接插入排序后为止。

5.冒泡排序冒泡法是指每相邻两个记录关键字比大小,大的记录往下沉(也可以小的往上浮)。

每一遍把最后一个下沉的位置记下,下一遍只需检查比较到此为止;到所有记录都不发生下沉时,整个过程结束。

6.快速排序快速排序法是通过一趟排序,将待排序的记录组分割成独立的两部分,其中前一部分记录的关键字均比枢轴记录的关键字小;后一部分记录的关键字均比枢轴记录的关键字大,枢轴记录得到了它在整个序列中的最终位置并被存放好。

第二趟再分别对分割成两部分子序列,再进行快速排序,这两部分子序列中的枢轴记录也得到了最终在序列中的位置而被存放好,并且它们又分别分割出独立的两个子序列……。

第十章_排序方法(数据结构ppt-严蔚敏)

第十章_排序方法(数据结构ppt-严蔚敏)

第二个问题解决方法——筛选
方法:输出堆顶元素之后,以堆中最后一个元素替代之;然 后将根结点值与左、右子树的根结点值进行比较,并与其中 小者进行交换;重复上述操作,直至叶子结点,将得到新的 堆,称这个从堆顶至叶子的调整过程为“筛选”
例 38 50 97 76
13 27 65 49 13 38
97 27 38 50 76
2 (n 4)(n 1) 记录移动次数: (i 1) 2 i 2
i 2 n
若待排序记录是随机的,取平均值 n2 关键字比较次数: T(n)=O(n² ) 4 记录移动次数:
空间复杂度:S(n)=O(1)
n2 4
折半插入排序
排序过程:用折半查找方法确定插入位置的排序叫~
初始时令i=s,j=t 首先从j所指位置向前搜索第一个关键字小于x的记录,并和rp 交换 再从i所指位置起向后搜索,找到第一个关键字大于x的记录, 和rp交换 重复上述两步,直至i==j为止 再分别对两个子序列进行快速排序,直到每个子序列只含有 一个记录为止
x 例 初始关键字: 27 49 i 完成一趟排序: ( 27 38 13 49 65 i 13) 49 97 76 j 97 49 13 j 97 65 49 27 50 j 50)
13 38
76 65 27 49
堆排序:将无序序列建成一个堆,得到关键字最小 (或最大)的记录;输出堆顶的最小(大)值后,使 剩余的n-1个元素重又建成一个堆,则可得到n个元素 的次小值;重复执行,得到一个有序序列,这个过程 叫~ 堆排序需解决的两个问题:
如何由一个无序序列建成一个堆? 如何在输出堆顶元素之后,调整剩余元素,使之成为一个新 的堆?
按排序所需工作量

第十章排序答案

第十章排序答案

第10章排序一、选择题1.某内排序方法的稳定性是指( D )。

【南京理工大学 1997 一、10(2分)】A.该排序算法不允许有相同的关键字记录 B.该排序算法允许有相同的关键字记录C.平均时间为0(n log n)的排序方法 D.以上都不对2.下面给出的四种排序法中( D )排序法是不稳定性排序法。

【北京航空航天大学 1999 一、10 (2分)】 A. 插入 B. 冒泡 C. 二路归并 D. 堆积3.下列排序算法中,其中(D )是稳定的。

【福州大学 1998 一、3 (2分)】A. 堆排序,冒泡排序B. 快速排序,堆排序C. 直接选择排序,归并排序D. 归并排序,冒泡排序4.稳定的排序方法是( B )【北方交通大学 2000 二、3(2分)】A.直接插入排序和快速排序 B.折半插入排序和起泡排序C.简单选择排序和四路归并排序 D.树形选择排序和shell排序5.下列排序方法中,哪一个是稳定的排序方法?( B )【北方交通大学 2001 一、8(2分)】A.直接选择排序 B.二分法插入排序 C.希尔排序 D.快速排序6. 快速排序方法在( D )情况下最不利于发挥其长处。

【燕山大学 2001 一、3 (2分)】A. 要排序的数据量太大B. 要排序的数据中含有多个相同值C. 要排序的数据个数为奇数D. 要排序的数据已基本有序7. 以下序列不是堆的是( D )。

【西安电子科技大学 2001应用一、5 (2分)】A. (100,85,98,77,80,60,82,40,20,10,66)B. (100,98,85,82,80,77,66,60,40,20,10)C. (10,20,40,60,66,77,80,82,85,98,100)D. (100,85,40,77,80,60,66,98,82,10,20)8.下列四个序列中,哪一个是堆( C )。

【北京工商大学 2001 一、8 (3分)】A. 75,65,30,15,25,45,20,10B. 75,65,45,10,30,25,20,15C. 75,45,65,30,15,25,20,10D. 75,45,65,10,25,30,20,159.从未排序序列中依次取出一个元素与已排序序列中的元素依次进行比较,然后将其放在已排序序列的合适位置,该排序方法称为( A )排序法。

第10章 排序 PPT课件

第10章 排序 PPT课件

清华大学出版社
概述
数据结构(C++版)
排序算法的存储结构
从操作角度看,排序是线性结构的一种操作,待排序 记录可以用顺序存储结构或链接存储结构存储。
假定1:采用顺序存储结构,关键码为整型,且记录 只有关键码一个数据项。
int r[n+1]; //待排序记录存储在r[1]~r[n],r[0]留做他用
假定2:将待排序的记录序列排序为升序序列。
i = 6 18 10 15 21 25 25* 18
10 15 18 21 25 25*
r[0]的作用? 暂存单元 43;+版)
关键问题(1)如何构造初始的有序序列?
解决方法:
将第1个记录看成是初始有序表,然后从第2个记录起 依次插入到这个有序表中,直到将第n个记录插入。 算法描述:
学号 0001 0002 0003 …
姓名 王军 李明 汤晓影

高数 85 64 85 …
英语 68 72 78 …
思想品德 88 92 86 …
清华大学出版社
概述
数据结构(C++版)
排序的基本概念
单键排序:根据一个关键码进行的排序; 多键排序:根据多个关键码进行的排序。
学号 0001 0002 0003 …
算法描述:
r[0]=r[i]; j=i-1; while (r[0]<r[j]) {
r[j+1]=r[j]; j--; }
r[0]有两个作用:
1. 进入循环之前暂存了r[i] 的值,使得不致于因记录 的后移而丢失r[i]的内容;
2. 在查找插入位置的循环 中充当哨兵。
清华大学出版社
插入排序
姓名 王军 李明 汤晓影

第10章-内部排序PPT课件

第10章-内部排序PPT课件
L.r[j+1]=L.r[j]; //将j……i-1的记录后移一格 L.r[j+1]=L.r[0]; } //将Ri插入到位置j+1 }
-
算法效率
时间复杂度
待排序记录按关键字从小到大排列(正序)
n
比较次数: 1 n 1 i2
移动次数: 0
待排序记录按关键字从大到小排列(逆序)
比较次数:
n i (n2)(n1)
i2
2
移动次数:
n
(n4)(n1)
(i1)
i2
2
待排序记录随机,取平均值
比较次数: n 2
4
移动次数: n 2
4
总的时间复杂度:T(n)=O(n2)
空间复杂度:S(n)=O(1)
-
3. 折半插入排序
排序过程:用折半查找方法确定插入位置。 举例:
i=1: (38) (49) 38 65 97 76 13 27 49
5 R’={5}
R={10,2}
2 R’={2,5}
R={2}
10 R’={2,5,10}
R={ }
2 R’={2,2,5,10}
-
2. 直接插入排序
排序过程:整个排序过程为n-1趟插入
将序列中第1个记录看成是一个有序子序列 从第2个记录开始,逐个进行插入,直至整个序列有序
R1 R2 …… Rn
内部排序适用于记录个数不很多的小文件; 外部排序则适用于记录个数太多,不能一次 将其全部放入内存的大文件
排序依据策略
插入排序:直接插入排序, 折半插入排序, 希尔排序 交换排序:冒泡排序, 快速排序 选择排序:简单选择排序, 堆排序 归并排序:2-路归并排序 基数排序

数据结构 排序

数据结构 排序
选择排序种类: 简单选择排序 树形选择排序 堆排序
2019/9/7
30
10.4.1 简单选择排序
待排记录序列的状态为:
有序序列R[1..i-1] 无序序列 R[i..n]
有序序列中所有记录的关键字均小于无序序列中记 录的关键字,第i趟简单选择排序是从无序序列 R[i..n]的n-i+1记录中选出关键字最小的记录加入 有序序列
2019/9/7
5
排序的类型定义
#define MAXSIZE 20 // 待排序记录的个数
typedef int KeyType;
typedef struct
{ KeyType key;
InfoType otherinfo; ∥记录其它数据域
} RecType;
typedef struct {
RecType r[MAXSIZE+1];
分别进行快速排序:[17] 28 [33] 结束 结束
[51 62] 87 [96] 51 [62] 结束
结束
快速排序后的序列: 17 28 33 51 51 62 87 96
2019/9/7
26
自测题 4 快速排序示例
对下列一组关键字 (46,58,15,45,90,18,10,62) 试写出快速排序的每一趟的排序结果

final↑ ↑first
i=8
[51 51 62 87 96 17 28 33]

final↑ ↑first
2019/9/7
14
希尔(shell )排序
基本思想:从“减小n”和“基本有序”两 方面改进。
将待排序的记录划分成几组,从而减少参 与直接插入排序的数据量,当经过几次分 组排序后,记录的排列已经基本有序,这 个时候再对所有的记录实施直接插入排序。

第10章 排序

第10章  排序

第十章排序一、单项选择题1.有一组序列48,36,68,99,75,24,58,52进行快速排序,要求结果按从小到大排序,则进行一次划分之后结果为_____。

A. (24 28 36) 48 (52 68 75 99)B. (28 36 24) 48 (75 99 68 52)C. (36 68 99) 48 (75 24 28 52)D. (28 36 24) 48 (99 75 68 52)2.已知两个有序表,若要将它们组合成一个新的有序表,最好的方法是_____。

A. 希尔排序B. 二分插入排序C. 合并排序D. 冒泡排序3.排序译意风稳定的和不稳定的之分,下列四个说法中,只有______是正确的。

A. 快速排序是稳定的排序方法B. 堆排序是不稳定的排序方法C. 希尔排序是稳定的排序方法D. 冒泡排序是不稳定的排序方法4. 下列排序方法中,____方法是不稳定的。

A. 冒泡排序B. 希尔排序C. 冒泡排序D. 直接插入排序5. 下列排序方法中,在待排序的数据已经有序时,花费时间反而最多的是______。

A.快速排序B. 希尔排序C. 冒泡排序D. 堆排序6. 快速排序方法在最好情况下的时间复杂度为______。

A. O(n)B. O(n2)C. O(nlog2n)D.(log2n)7. 下列排序方法中,时间复杂度不受数据初始状态影响,恒为O(n2)的是_______。

A. 堆排序B.冒泡排序C. 直接选择排序D.快速排序8. 依次将待排序序列中的元素和有序子序列合并为一个新的有序子序列的排序方法是____。

A. 快速排序B.插入排序C. 冒泡排序D. 堆排序9. 在表R中排序前已按键值递增顺序排序,则_____方法的比较次数最少。

A. 直接插入排序B. 快速排序C. 归并排序D. 选择排序10. 已知表A中每个元素距其最终位置不远,采用______方法最节省时间。

A. 堆排序B. 冒泡排序C. 快速排序D. 直接选择排序11. 在下列排序方法中,字比较的次数与记录的初始排列次序无关的是______。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第10章排序一、基础知识题10.1 基本概念:内排序,外排序,稳定排序,不稳定排序,顺串,败者树,最佳归并树。

【解答】⑴内排序和外排序若整个排序过程不需要访问外存便能完成,则称此类排序问题为内部排序;反之,若参加排序的记录数量很大,整个序列的排序过程不可能在内存中完成,则称此类排序问题为外部排序。

内部排序适用于记录个数不多的文件,不需要访问外存,而外部排序适用于记录很多的大文件,整个排序过程需要在内外存之间多次交换数据才能得到排序的结果。

⑵稳定排序和不稳定排序假设待排序记录中有关键字K i=K j(i≠j),且在排序前的序列中R i领先于R j。

经过排序后,R i与R j的相对次序保持不变(即R i仍领先于R j),则称这种排序方法是稳定的,否则称之为不稳定的。

⑶顺串外部排序通常经过两个独立的阶段完成。

第一阶段,根据内存大小,每次把文件中一部分记录读入内存,用有效的内部排序方法(如快速排序、堆排序等)将其排成有序段,这有序段又称顺串或归并段。

⑷败者树败者树为提高外部排序的效率而采用的,是由参加比赛的n个元素作叶子结点而得到的完全二叉树。

每个非叶(双亲)结点中存放的是两个子结点中的败者数据,而让胜者去参加更高一级的比赛。

另外,还需增加一个结点,即结点0,存放比赛的全局获胜者。

⑸最佳归并树在外部排序的多路平衡归并的k叉树中,为了提高效率减少对外存的读写次数,按哈夫曼树构造的k叉树称最佳归并树。

这棵树中只有度为0和度为k的结点。

若用m表示归并段个数,用n k表示度为k的个数,若(m-1)%(k-1)=0,则不需增加虚段,否则应附加k-(m-1)%(k-1)-1个虚段(即第一个k路归并使用(m-1)%(k-1)+1个归并段)。

10.2设待排序的关键字序列为(15, 21, 6, 30, 23, 6′, 20, 17),试分别写出使用以下排序方法每趟排序后的结果。

并说明做了多少次比较。

(1) 直接插入排序(2) 希尔排序(增量为5,2,1) (3) 起泡排序(4) 快速排序(5) 直接选择排序 (6) 锦标赛排序(7) 堆排序(8) 二路归并排序 (9) 基数排序【解答】(1) 直接插入排序初始关键字序列: 15,21,6,30,23,6′,20,17第一趟直接插入排序:【15,21】第二趟直接插入排序:【6,15,21】第三趟直接插入排序:【6,15,21,30】第四趟直接插入排序:【6,15,21,23,30】第五趟直接插入排序:【6,6′,15,21,23,30】第六趟直接插入排序:【6,6′,15,20,21,23,30】第七趟直接插入排序:【6,6′,15,17,20,21,23,30】 (2) 希尔排序(增量为5,2,1)初始关键字序列: 15,21,6,30,23,6′,20,17第一趟希尔排序: 6′,20,6,30,23,15,21,17第二趟希尔排序: 6′,15,6,17,21,20,23,30第三趟希尔排序: 6′,6,15,17,20,21,23,30(3) 起泡排序初始关键字序列:15,21,6,30,23,6′,20,17第一趟起泡排序:15,6,21,23,6′,20,17,30第二趟起泡排序:6,15,21,6′,20,17,23,30第三趟起泡排序:6,15,6′,20,17,21,23,30第四趟起泡排序:6,6′,15,17,20,21,30,23第五趟起泡排序:6,6′,15,17,20,21,30,23(4) 快速排序初始关键字序列: 15,21,6,30,23,6′,20,17第一趟快速排序:【6′,6】15【30,23,21,20,17】第二趟快速排序: 6′,6, 15【17,23,21,20】30第三趟快速排序: 6′,6, 15,17【23,21,20】30第四趟快速排序: 6′,6, 15,17,【20,21】23,30第五趟快速排序: 6,6′,15,17,20,21,30,23(5) 直接选择排序初始关键字序列: 15,21,6,30,23,6′,20,17第一趟直接选择排序: 6,21,15,30,23,6′,20,17第二趟直接选择排序: 6,6′,15,30,23,21,20,17第三趟直接选择排序: 6,6′,15,30,23,21,20,17第四趟直接选择排序: 6,6′,15,17,23,21,20,30第五趟直接选择排序: 6,6′,15,17,20,21,23,30第六趟直接选择排序: 6,6′,15,17,20,21,23,30第七趟直接选择排序: 6,6′,15,17,20,21,23,30(6) 锦标赛排序初始关键字序列: 15,21,6,30,23,6′,20,17666’1566’1715216306’20 176’15 6’15 306’17 15 21∞30 23 6’20 171523153023171521∞3023∞2017锦标赛排序的基本思想是:首先对n个待排序记录的关键字进行两两比较,从中选出⎡n/2⎤个较小者再两两比较,直到选出关键字最小的记录为止,此为一趟排序。

我们将一趟选出的关键字最小的记录称为“冠军”,而“亚军”是从与“冠军”比较失败的记录中找出,具体做法为:输出“冠军”后,将(冠军)叶子结点关键字改为最大,继续进行锦标赛排序,直到选出关键字次小的记录为止,如此循环直到输出全部有序序列。

上面给出了排在前三个的记录,详细过程略。

(7) 堆排序初始关键字序列:15,21,6,30,23,6′,20,17初始堆: 6,17,6’,21,23,15,20,30第一次调堆: 6’,17,15, 21,23,30,20,【6】第二次调堆: 15,17,20,21,23,30,【6’,6】第三次调堆: 17,21,20,30,23,【15,6’,6】度均为1,排序完毕。

当n=7时,k=3,在最好情况下,第一遍需比较6次,第二遍分别对两个子文件(长度均为3,k=2)进行排序,各需2次,共10次即可。

(2) 在最好情况下快速排序的原始序列实例:4,1,3,2,6,5,7。

(3) 在最坏情况下,若每次用来划分的记录的关键字具有最大(或最小)值,那么只能得到左(或右)子文件,其长度比原长度少1。

因此,若原文件中的记录按关键字递减次序排列,而要求排序后按递增次序排列时,快速排序的效率与冒泡排序相同,其时间复杂度为O(n2)。

所以当n=7时,最坏情况下的比较次数为21次。

(4) 在最坏情况下快速排序的初始序列实例: 7,6,5,4,3,2,1,要求按递增排序。

10.9判断下面的每个结点序列是否表示一个堆,如果不是堆,请把它调整成堆。

(1)100,90,80,60,85,75,20,25,10,70,65,50(2)100,70,50,20,90,75,60,25,10,85,65,80【解答】(1) 是堆(2) 不是堆。

调成大堆: 100,90,80,25,85,75,60,20,10,70,65,5010.10在多关键字排序时,LSD和MSD两种方法的特点是什么?【解答】最高位优先(MSD)法:先对最高位关键字K0进行排序,将序列分成若干子序列,每个子序列中的记录都具有相同的K0值,然后,分别就每个子序列对关键字K1进行排序,按K1值不同再分成若干更小的子序列,……,依次重复,直至最后对最低位关键字排序完成,将所有子序列依次连接在一起,成为一个有序子序列。

最低位优先(LSD)法:先对最低位关键字K d-1进行排序,然后对高一级关键字K d-2进行排序,依次重复,直至对最高位关键字K0排序后便成为一个有序序列。

进行排序时,不必分成子序列,对每个关键字都是整个序列参加排序,但对K i(0<=i<d-1)排序时,只能用稳定的排序方法。

另一方面,按LSD进行排序时,可以不通过关键字比较实现排序,而是通过若干次“分配”和“收集”来实现排序。

10.11给出如下关键字序列321,156,57,46,28,7,331,33,34,63试按链式基数排序方法,列出一趟分配和收集的过程。

【解答】按LSD法→321→156→57→46→28→7→331→33→34→63分配 [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]321 33 34 156 57 28331 63 46 7收集→321→331→33→63→34→156→46→57→7→2810.12奇偶交换排序如下所述:对于初始序列A[1],A[2],…,A[n],第一趟对所有奇数i(1<=i<n),将A[i]和A[i+1]进行比较,若A[i]>A[i+1],则将两者交换;第二趟对所有偶数i(2<=i<n),将A[i]和A[i+1]进行比较,若A[i]>A[i+1],则将两者交换;第三趟对所有奇数i(1<=i<n);第四趟对所有偶数i(2<=i<n),…,依次类推直至到整个序列有序为止。

(1) 分析这种排序方法的结束条件。

(2) 写出用这种排序方法对35,70,33,65,24,21,33进行排序时,每一趟的结果。

【解答】(1)排序结束条件为没有交换为止(2)第一趟奇数:35,70,33,65,21,24,33第二趟偶数:35,33,70,21,65,24,33第三趟奇数:33,35,21,70,24,65,33第四趟偶数:33,21,35,24,70,33,65第五趟奇数:21,33,24,35,33,70,65第六趟偶数:21,24,33,33,35,65,70第七趟奇数:21,24,33,33,35,65,70(无交换)第八趟偶数:21,24,33,33,35,65,70(无交换) 结束10.13设某文件经内排序后得到100个初始归并段(初始顺串),若使用多路归并排序算法,并要求三趟归并完成排序,问归并路数最少为多少?【解答】设归并路数为k,归并趟数为s,则s=⎡logk 100⎤,因⎡logk100⎤=3 ,且k为整数,故k=5,即最少5路归并可以完成排序。

10.14证明:置换-选择排序法产生的初始归并段的长度至少为m。

(m是所用缓冲区的长度)。

【证明】由置换选择排序思想,第一个归并段中第一个元素是缓冲区中最小的元素,以后每选一个元素都不应小于前一个选出的元素,故当产生第一个归并段时(即初始归并段),缓冲区中m个元素中除最小元素之外,其他m-1个元素均大于第一个选出的元素,即当以后读入元素均小于输出元素时,初始归并段中也至少能有原有的m个元素。

证毕。

10.15设有11个长度(即包含记录的个数)不同的初始归并段,它们所包含的记录个数分别为25,40,16,38,77,64,53,88,9,48,98。

相关文档
最新文档