- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算法与数据结构习题3
习题3
一、单项选择题
1. 将一棵有100个结点的完全二叉树从根开始,每层从左到右依次对结点进行编号,根结点编号为1,则编号最大的非叶子结点的编号为( )。
A.48
B.49
C.50
D.51
2. 在待排序的元素序列基本有序的前提下,效率最高的排序算法是( )。
A、选择排序
B、插入排序
C、快速排序
D、归并排序
3. 一个具有n个顶点的连通无向图的生成树中有( )条边。
A、n-1
B、n
C、n/2
D、n+1
二、填空题
1. 在树形结构中,树根结点没有前驱结点,其余每个结点有且只有_______个前驱结点;叶子结点没有_______结点。
2. 若按层次顺序将一棵有n个结点的完全二叉树的所有结点编号为1到n,那么,当i为_______且不等于1时,结点i的左兄弟是结点i-1,否则结点i没有左兄弟;当i=(n-1)/2时,结点i的右子女是_______,否则结点i没有右子女。
3. 在单链表中,除了首元结点外,任一结点的存储位置由 指示。
4. 将下列表达式的复杂度由小到大重新排序后的正确顺序为 。
A、2n B、n!
C、n5 D、10000
E、n*log2n
三、判断题
1. 二叉树中所有结点个数是2k-1-1,其中k是树的深度。( )
2. 顺序存储方式的优点是存储密度大,且插入、删除运算效率高。( )
3. 链表的物理存储结构具有同链表一样的顺序。( )
4. 对于不同的使用者,一个表结构既可以是栈,也可以是队列,也可以是线性表。( )
四、简答题
1. 编写一个算法,对于输入的十进制非负整数,将它的二进制表示打印的算法写出来。
2. 写一个递归算法来计算并返回链表的长度,并在程序中做出相应的文字说明。
3. 给出栈的最常用的5种操作,并说明它们的功能。
4. 什么是内排序?什么样的排序算法是稳定的?快速排序稳定吗?为什么?
5. 什么是二叉树的高度?什么是完全二叉树?什么是满二叉树?
习题答案
一、单项选择题
题号 1 2 3 答案 C B A
二、填空题
题号 答案 1 1;后续 2 奇数;2i+1 3 其直接前驱结点的链域的值 4 DECAB
三、判断题
题号 1 2 3 4 答案 × × × √
四、简答题
1. Void print_bin(int dec_number){
/*将十进制非负整数转化为二进制数打印出来*/
PSeqStack pastack;
Int temp =dec_number;
If (temp0){
Printf(“Error!\n”);
Return;
}
Pastack= creatEmptyStack()_seq();/*建立一个空栈*/
If(pastack = = NULL)return;
While(temp0){
Push_seq(pastack,temp%2);
Temp/=2;
}
While(!isEmptyStack_seq(pastack)){
Printf(“%d”,top_seq(pastack));
Pop_seq(pastack);
}
Free(pastack);
}
2. 答: int length(LinkList llist){ /*计算单链表list的长度*/
If(llist = = NULL)
return();
return1+length(llist-link);
}
3. 答:
(1) void push(ST,x) 将元素x插入栈ST的顶端
(2) void pop(ST) 从栈ST顶端删除一个元素
(3) DataType top(ST) 读栈ST顶端的元素
(4) int isEmpty(ST) 判断栈ST是否为空栈
(5) pStack creatEmptyStack() 创建一个空栈
4. 答:
(1)排序过程中,数据全放在内存中处理的排序方法称为“内排序”。
(2)若经过排序后,文件中排序码相等的记录之间的相对
您可能关注的文档
最近下载
- 电池及锂电池基础知识培训.pdf VIP
- 拆分合同协议.docx VIP
- 日剧剧本___ハケンの品格.doc VIP
- 劳动教育整理与收纳.pptx VIP
- 部编版2025 初中历史七上 第6课 战国时期的社会变革 课件(共28张PPT)(含音频+视频).pptx VIP
- (刘氏字辈派语寻宗资料第廿七辑.doc VIP
- 先锋sc-lx89-79-fxj-zhtw功放中文说明书.pdf VIP
- XX医生正高职称主任医师评审答辩材料PPT课件(完整框架).pptx VIP
- 教室整理与收纳过程中的创造性劳动实践.docx VIP
- 2024《小学劳动教育课程实施现状调查研究—以X小学为例》12000字.docx VIP
文档评论(0)