- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
C++五级
2024年12⽉
1单选题(每题2分,共30分)
题号123456789101112131415
答案CCADCDBAABCBADB
第1题下⾯关于链表和数组的描述,错误的是()。
A.当数据数量不确定时,为了应对各种可能的情况,需要申请⼀个较⼤的数组,可能浪费空间;此时⽤链表⽐
较合适,⼤⼩可动态调整。
B.在链表中访问节点的效率较低,时间复杂度为。
C.链表插⼊和删除元素效率较低,时间复杂度为。
D.链表的节点在内存中是分散存储的,通过指针连在⼀起。
第2题在循环单链表中,节点的next指针指向下⼀个节点,最后⼀个节点的next指针指向()。
A.当前节点
B.nullptr
C.第⼀个节点
D.上⼀个节点
第3题为了⽅便链表的增删操作,⼀些算法⽣成⼀个虚拟头节点,⽅便统⼀删除头节点和其他节点。下⾯代码实现
了删除链表中值为val的节点,横线上应填的最佳代码是()。
1structLinkedNode{
2intval;
3LinkedNode*next;
4LinkedNode(intval):val(val),next(nullptr){}
5};
6
7voidremoveElements(LinkedNode*head,intval){
8if(head==nullptr){
9return;
10}
11LinkedNode*cur;
12LinkedNode*dummyHead=newLinkedNode(0);//虚拟头节点
13________________________________//在此处填入代码
14
15while(cur-next!=nullptr){
16if(cur-next-val==val){
17LinkedNode*tmp=cur-next;
18cur-next=cur-next-next;
19deletetmp;
20tmp=nullptr;
21}
22else{
23cur=cur-next;
24}
25}
26head=dummyHead-next;
27deletedummyHead;
28dummyHead=nullptr;
29}
A.dummyHead-next=head;cur=dummyHead;
B.dummyHead-next=head-next;cur=dummyHead;
C.dummyHead-next=head;cur=dummyHead-next;
D.dummyHead-next=head-next;cur=dummyHead-next;
第4题对下⾯两个函数,说法错误的是()。
1intfibA(intn){
2
文档评论(0)