- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
2025年南京信息工程大学期中试卷附答案
一、单项选择题(每题2分,共20分)
1.下列关于线性表的描述中,正确的是()。
A.顺序表的插入操作时间复杂度一定为O(n)
B.链表的节点必须包含指针域
C.顺序表可以通过下标直接访问元素
D.链表的存储空间一定是不连续的
2.若一个栈的输入序列是1,2,3,4,5,输出序列为3,2,5,4,1,则栈的大小至少需要()。
A.2B.3C.4D.5
3.已知循环队列的存储空间为数组Q[0..m-1],初始时front=rear=0。当完成一系列入队和出队操作后,front=20,rear=15,若队列的最大容量为m=50,则此时队列中的元素个数为()。
A.5B.35C.45D.15
4.对于一棵深度为h的满二叉树(根节点深度为1),其叶子节点数为()。
A.2^(h-1)B.2^h-1C.hD.2h
5.对关键字序列{55,32,41,77,63,28}进行冒泡排序(升序),第一趟排序后得到的序列是()。
A.{32,41,55,63,28,77}B.{32,55,41,63,28,77}
C.{32,41,55,28,63,77}D.{32,55,41,28,63,77}
6.哈希表的平均查找长度与()无关。
A.哈希函数B.处理冲突的方法C.装填因子D.表长
7.下列排序算法中,不稳定的是()。
A.插入排序B.归并排序C.冒泡排序D.快速排序
8.对于n个节点的无向图,若该图是连通图,则其边数至少为()。
A.n-1B.nC.n(n-1)/2D.2n
9.若某二叉树的前序遍历序列为ABDECFG,中序遍历序列为DBEAFCG,则后序遍历序列为()。
A.DEBFGCAB.DEBFCGAC.DEBFGACD.DEBFAGC
10.已知一个单链表的头指针为head,若要在第k个节点前插入一个新节点(k1),则需要修改()个指针。
A.1B.2C.3D.4
二、填空题(每题3分,共15分)
1.一个栈的输入序列为a,b,c,d,e,若输出序列的第一个元素是c,则第三个输出元素可能是________(写出一个即可)。
2.对于完全二叉树,若某节点的编号为i(根节点编号为1),则其左孩子的编号为________。
3.对序列{25,18,30,12,40,20}进行简单选择排序(升序),第三趟排序后序列为________。
4.已知一个哈希表的长度为10,哈希函数为H(key)=key%7,采用线性探测法处理冲突。若依次插入关键字15,3,22,14,则关键字14的存储位置是________(下标从0开始)。
5.对于有向图的拓扑排序,其结果可能不唯一的原因是________。
三、简答题(每题10分,共30分)
1.简述顺序表和链表在存储结构、插入/删除操作、随机访问上的优缺点。
2.说明快速排序的基本思想,并分析其平均时间复杂度和最坏时间复杂度。
3.已知一棵二叉树的中序遍历序列为DGBEACHF,后序遍历序列为GDBEHFCA。
(1)画出该二叉树的结构;
(2)写出其前序遍历序列。
四、算法设计题(第1题15分,第2题20分,共35分)
1.设计一个算法,将一个带头节点的单链表L逆置(即原链表为a1→a2→…→an,逆置后为an→…→a2→a1)。要求用伪代码描述,并分析时间复杂度。
2.已知一个数组存储了n个整数(可能包含重复元素),设计一个高效算法找出其中出现次数超过n/2的元素(称为主元素)。要求:
(1)说明算法的基本思路;
(2)用伪代码实现;
(3)分析时间复杂度和空间复杂度。
答案
一、单项选择题
1.C(顺序表支持随机访问;顺序表插入在末尾时时间复杂度为O(1),A错误;链表节点可能包含其他信息,指针域非必须,B错误;链表存储空间通常不连续,但静态链表用数组实现,存储空间连续,D错误)
2.B(分析操作序列:1入,2入,3入→3出,2出→此时栈中剩1;4入,5入→5出,4出→1出。栈的最大容量在3入时为3,故至少需要3)
3.C(循环队列元素个数计算:(rear-front+m)%m=(15-20+50)%50=45)
4.A(满二叉树第h层的节点数为2^(h-1),即叶子节点数)
5.C(冒泡排序每趟将最大元素“冒”到末尾。原序列:55,32,41,7
您可能关注的文档
最近下载
- 中国法律体系课件.pptx VIP
- 光伏系统设计手册.pdf VIP
- 2013年水泥工业大气污染物排放标准.pdf VIP
- 中压蒸汽管线清洗方案.docx
- 第五单元第1课《树石小品》课件-2025-2026学年湘美版初中美术八年级上册.pptx VIP
- 第二单元《银屏乐声》第3课时《人世间》+《永志不忘》课件 人音版八年级音乐上册.pptx VIP
- 2024-2030年撰写:中国主焦煤项目风险评估报告.docx
- 兔子介绍幼儿园课件.pptx VIP
- 英语教学法-自然法-The-Natural-ApproachPPT课件.pptx VIP
- 初中数学教学课例《一次函数》课程思政核心素养教学设计及总结反思.doc VIP
原创力文档


文档评论(0)