- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
期末考试试题A(开卷)答案
PAGE
PAGE 7
《数据结构》试题答案(开卷) A卷
(电信系本科2005级 2006年11月)
姓名 班级
题 号
一
二
三
总分
题 分
40
30
30
100
得 分
得 分
得 分
一、回答下列问题 (每题5分,共40分)
1.给定序列(67,45,87,19,55,32,70,60,90,23),写出它的初始堆序列。
答:调整后的初始堆序列(小根堆)为:19,23,32,45,55,87,70,60,90,67
或者是大根堆:90, 67, 87, 60, 55, 32, 70, 45, 19, 23
19
19
23
32
45
55
87
70
60
90
67
2.设一个序列奇数项和偶数项分别由小到大有序,用什么方法可以最快得到一个有序序列,分析它的时间复杂度。
答:把奇数项和偶数项分为2个有序序列,然后进行合并,时间复杂度为O(n)。实际上就是把2个有序表合并为一个有序表。见教科书算法2.7。
3.二叉排序树中的最大值在二叉排序树的何处?
答:最大值应该位于二叉排序树中根的右子树的最右叶子上。
4.在2048个互不相同的关键码中选择最小的5个关键码,用堆排序是否比用锦标赛排序更快?为什么?
答:此题用锦标赛排序比堆排序要快。理由是;
①在首次求最小值时,锦标赛排序对2048个结点建树得到最小码只需比较n-1(即2047)次,而此时堆排序建初始堆得到最小码却可能需要比较4072次 (因为每个结点的调整都要与左右两边的孩子相比。从第1024个结点往前调整,有512个结点可能调整1次,但要与左右孩子都比较,有256个结点可能调整2次,每次都要与左右孩子比较,有128个结点可能调整3次,……有32个结点调整5次,……根结点可能要调整10次,每次都会与左右孩子比较,所以可能会比较2036×2=4072次)。
而两种算法对求后面4个次小码的平均效率相同,都是log2n,所以,此题用锦标赛排序会比堆排序快。
5. n个顶点、m条边的全连通图,至少去掉几条边才能构成一棵树?
答:因为树的结构是一对多,即n个结点的树只有n-1条边与双亲结点相连。只要再多添一条边就会成为图结构。所以,m条边的图要去掉m-(n-1)=m-n+1条边才能构成一棵树。这棵树也就是最小生成树。
6.设模式串为:liuwenliuyuliuyingliyu, 求该模式串的next函数。
答: Next[j]=0 1 1 1 1 1 1 2 3 4 1 1 2 3 4 1
7.一个二叉树按层次遍历的顺序存储结构如下,请画出该二叉树 (φ为空) 。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
A
B
D
φ
C
φ
E
φ
φ
F
G
φ
φ
H
φ
答:画出二叉树如下:
8. 设数组A[ 1..10, 1..8 ] 的基地址为2000,每个元素占2个存储单元,若以列序为主序存储(按列存储),则元素A[ 4,5 ] 的存储地址是多少?
答:A[ 4,5 ] 的存储地址是2086
得 分二、综合题(每题10分,共30分)
得 分
输入一序列(58,18,29,22,38,81,19,14),现分别采用顺序查找和二叉排序树查找,求等概率条件下二者的平均查找长度ASL;若改用哈希查找(哈希函数为:Hash(key)=key mod 11,哈希表的大小为11,采用线性探测法进行冲突处理),求等概率条件下的平均查找长度ASL,并对这三种查找方法进行比较。
答:采用二叉排序树查找时,二叉排序树为:
采用二叉排序树查找时,ASL=1/8[1×1+2×2+3×1+4×2+5×1+6×1]=27/8=3.375
采用顺序查找时,ASL=1/2(8+1)=4.5
采用哈希查找时,查找表为:
0 1 2 3 4 5 6 7 8 9 10
22
58
81
38
14(3)
18
29(1)
19(1)
ASL=1/8(5×1+2×2+1×4)=13/8=1.625
2.已知用线性有序链表存储整数集合的元素。阅读下面算法,并回答下列问题:
(1)写出执行ABC(a, b)的返回值,其中a和b分别为指向存储集合
{ 2,4,5,7,9,12 } 和 { 2,4,5,7,9 } 的链表的头指针;
(2)简述算法ABC的功能;
(3)写出算法ABC的时间复杂度。
您可能关注的文档
- 房地产典当知识手册.doc
- 房地产公开课昆明社区商业定位规划招商销售及会所经营实战培训(4月12日).doc
- 房地产公开课长沙大型商业地产开发运营建筑规则黄金法则及10大误区解读(4月20).doc
- 房地产内训开发商角度的房地产营销及全程实战案例解析中房商学院.doc
- 房地产内训标杆地产组织管控组织架构设计素质模型与人才测评(终).docx
- 房地产内训绿城地产工程计划管理及经验交流内训.docx
- 房地产内训郑州向万科泛海学习内部控制与内部审计与内控执行力(6月13).doc
- 房地产凯里建材综合市场招商推广策划草案(doc).doc
- 房地产台式销售(全)免费.doc
- 房地产培训5月1011日(长春)房地产销售秘籍之《房地产狼性销售训练营地》中房商学院.doc
原创力文档


文档评论(0)