2024年C C++最新【C++笔试强训】第二十一天,2024年最新了解C C++架构组件后构建APP超简单

img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以戳这里获取

🎇C++笔试强训


  • 博客主页:一起去看日落吗
  • 分享博主的C++刷题日常,大家一起学习
  • 博主的能力有限,出现错误希望大家不吝赐教
  • 分享给大家一句我很喜欢的话:夜色难免微凉,前方必有曙光 🌞。

在这里插入图片描述

💦🔥


选择题

💦第一题

设一个有序的单链表中有n个结点,现要求插入一个新结点后使得单链表仍然保持有序,则该操作的时间复杂度()

A O(log2n)
B O(1)
C O(n2)
D O(n)

注意是是有序的单链表,要保证插入是有序的,所以要先遍历链表,所以跟元素个数有关,所以是O(n)

这道题的答案是D


💦第二题

在一个单链表中,若删除 P 所指结点的后续结点,则执行?

A p = p->next;p->next = p->next->next;
B p->next = p->next;
C p->next = p->next->next;
D p = p->next->next

请添加图片描述

这道题的答案是C


💦第三题

设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用()最节省时间

A 带头结点的双循环链表
B 单循环链表
C 带尾指针的单循环链表
D 单链表

需要尾插尾删,需要找到他的前驱节点

如果是单链表和单循环链表,需要把链表遍历一次,到最后才能找到前驱节点

而带头双向链表可以通过头节点找到最后一个位置的前驱

带尾指针的单循环链表即使找到了,也要有一个指针遍历到尾部请添加图片描述

这道题的答案是A


💦第四题

单链表实现的栈,栈顶指针为Top(仅仅是一个指针),入栈一个P节点时,其操作步骤为()

A Top->next=p;
B p->next=Top->next;Top->next=p;
C p->next=Top;Top=p->next;
D p->next=Top;Top=Top->next;

这道题是用链表实现栈,入栈是进行头插,其实会分有无头节点两种情况,所以需要根据答案来看

请添加图片描述

这道题的答案是B


💦第五题

用不带头结点的单链表存储队列,其队头指针指向队头结点,队尾指针指向队尾结点,则在进行出队操作时()

A 仅修改队头指针
B 仅修改队尾指针
C 队头、队尾指针都可能要修改
D 队头、队尾指针都要修改

出队是头删,入队是尾插

请添加图片描述

如果队列里面只有一个元素,所以出队需要修改队头和队尾

这道题的答案是C


💦第六题

在具有 2n 个结点的完全二叉树中,叶子结点个数为()

A n
B n+1
C n-1
D n/2

这种题虽然是考察性质,但是做题的时候只需要按照完全二叉树的方式构造,然后代入就可以知道了请添加图片描述

这道题的答案是A


💦第七题

在任意一棵非空二叉排序树T1中, 删除某结点v之后形成二叉排序树 T2,再将v 插入T2形成二叉排序树T3。下列关于T1与T3的叙述中,正确的是( )。

I.若 v 是 T1的叶结点,则 T1 与 T3 不同

II. 若 v 是 T1的叶结点,则 T1与 T3相同

III.若 v 不是 T1 的叶结点,则 T1 与 T3 不同

IV.若v 不是 T1 的叶结点,则 T1 与 T3 相同

A 仅 I、 III
B 仅 I、 IV
C 仅 II、 III
D 仅 II、 IV

二叉排序树是二叉搜索树,我们随便弄一颗出来

请添加图片描述

请添加图片描述

数据结构画图是关键

这道题的答案是C


💦第八题

下述二叉树中,哪一种满足性质:从任一结点出发到根的路径上所经过的结点序列按其关键字有序()

A 二叉排序树
B 哈夫曼树
C AVL树
D 堆

从任意叶子到根有序,根据上题的图可以二叉排序树不是,哈夫曼树是最小生成树,哈夫曼树加权的值是不存在数据内的,所以不行,AVL是高度平衡化的二叉搜索树,只要求高度平衡,也不一定有序,而堆排序是大堆或者小堆,所以一定有序

这道题的答案是D


💦第九题

散列文件使用散列函数将记录的关键字值计算转化为记录的存放地址。由于散列函数不是一对一的关系,所以选择好的( )方法是散列文件的关键。

A 散列函数
B 除余法中的质数
C 冲突处理
D 散列函数和冲突处理

哈希表的冲突问题是不可避免的,所以最好的方法是选择一个好的函数和冲突处理

这道题的答案是D


💦第十题

将整数数组(7-6-3-5-4-1-2)按照堆排序的方式原地进行升序排列,请问在第一轮排序结束之后,数组的顺序是()

A 2-6-3-5-4-1-7
B 6-2-3-5-4-1-7
C 6-5-3-2-4-1-7
D 1-4-7-5-6-3-2

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

-1-7
D 1-4-7-5-6-3-2

[外链图片转存中…(img-SufQBk8E-1715557012512)]
[外链图片转存中…(img-Cuj5yo3p-1715557012513)]

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值