2026届_无间道
技术栈测试(C++版)
1、C 语言看的哪个资料?:
c primer plus
- 指针懂吗?知道什么是地址吗?
指针就是地址,代表数据在内存中存储的地方 -
懂内存分配吗?
c主要是molloc返回时要转类型,释放为free(函数)。c++为new和delete关键字 -
结构体是否学过?
是,相当于没有继承和数据所有类型的类
2、C++看的哪个资料?
c++ primer plus
- 继承,重写,多态懂吗?
重写一般是修改父类函数以实现对应功能。多态一般由虚函数实现。指向父类的指针运行时指向子类并调用子类中重写的虚函数 -
STL这些容器学过了不?大致底层实现懂不?
学过。大致底层实现了解但无法手撕。 -
智能指针了解吗?
只用过shared_ptr,另外两个直到但没用过。大致知道是使用类包装目标类实现的
3、数据结构与算法看的哪个资料:
算法竞赛入门经典(紫皮书)
- 链表,栈,队列,二叉树能自己手写吗:
大一学过,集中训练之后应该可以重新写出,目前不太熟练 - 堆,AVL树,红黑树学过吗:
只学过堆 - 冒泡,快速,归并排序能手写吗:
冒泡可以,快排和归并大一下学的遗忘较多,需要重新训练 - 递归,二分,贪心,回溯,动规这几种算法学过哪几种:
大一下都学过,但是遗忘较多。尤其动规。二分回溯和递归能写但是写出往往有bug,需要花较长时间调试才能ac - LeetCode 大概刷了多少题:
20左右,大一在洛谷上还做过100题左右,但基本都是普及难度
4、计算机网络与操作系统看过哪些书籍:
- HTTP、TCP、IP、ICMP、UDP、DNS、ARP这些协议了解过吗:
了解过http,ip,dns,tcp - HTTPS安全相关的:数字签名、数字证书、TLS了解过吗?
-
进程线程通信机制了解吗?
只知道管道 - 内存管理了解吗?比如置换算法啥的:
5、网络编程了解吗?看过哪些资料?
- IO模型懂吗,阻塞非阻塞,同步异步这些概念懂吗?:
学多线程以及使用多显卡进行分布式训练时了解过同步异步 - IO 复用机制:epoll、select、poll懂吗?:
6、MySQL与Redis看过哪些资料?:
- sql 熟练吗:
- 索引底层原理懂吗:
- 锁和事务了解吗?幻读了解吗?
- redis主从,集群了解过吗?
7、C++/Linux项目做过哪些?:
– 使用opencv进行图像处理与目标检测
– linux上使用cmake链接外部库进行开发和管理大型项目
– 使用openvino和tensorrt进行模型本地推理加速
– 使用qt丰富已有前端项目的功能
– 之前比赛的视觉项目都是在linux上进行的,但对于操作系统这一块欠缺了解,linux底层学的很零散缺少体系
8、其他你们自己补充:
– 对于基于pytorch的神经网络架构较为了解
– 使用python进行开发,修改基于yolov5的开源项目以实现比赛中特定目标的识别以及关键点回归,并使用MobileNet-V3替换yolov5原有的backbone结构增强关键点回归的稳定性。
学习规划(2025.3.4)
一些链接入口
课程大纲: 所有课程大纲入口
你的大致情况分析与规划
C++这块学的还可以,算法也有一定基础,目前最大的问题是需要补充 网络编程 + linux系统编程 + 项目 这块的内容。我们先快速把这些内容过一下,冲刺一下暑假实习,就算是 5 月份投递也是没问题的,体验下面试都行。
所以呢,接下来我们主要补充 网络编程知识 + Linux系统编程知识 + 算法 + 项目 + 中间件的知识,然后就去面暑假实习了。
目标:冲年暑假实习了,重点在秋招。
具体安排(第一阶段)
现在主要以八股文+项目 + 算法为主,具体如下(每天按照4个小时学习量评估)
1、做个项目入门网络编程:项目需要做两个,入门看这个web服务器就行:C++网络编程入门与实战,这个教程主要是用来入门各种知识,比如网络编程,linux系统编程等,项目本身以后可能不写进简历。
做完了第一个项目,做第二个项目,第二个项目有点大,可以说是第一个项目的升级版,会用到比较多的技术栈,是我们以后面试的重点:0. C++工业气象台实战项目说明
时间:第一个入门 10 天,第二个15天。第二个项目主要学习一些思路,实在不行也可以复制源码。
2、算法:这块需要补的也挺多,可以好好把常见算法学一下,按照算法系统课 刷,重点搞定容易+中等的,刷完 + 刷最后的高频题库,掌握了就差不多了。
时间推荐:每周刷15+道。保证里面的题会做即可,可以和1同步学习。
3、网络 + 数据库 + Redis:八股文除了语言层面,其他就是网络+数据库 + Redis,所以咱们需要先学习
(1)、计算机网络:推荐看一下这篇文章:如果让你来设计网络(必看),这是我看过写的最好的文章了。
之后的话,直接参考面试来学习即可,你学习网络编程也会持续复习到。
(2)数据库:这是非常重点,看 MySQL原理剖析课程说明 就行,主要看我标🌟的那些。
(3)Redis:C++很多项目都没有设计redis,所以redis学习会比较尴尬,没有应用过,可以先去刷《redis开发与运维》:《Redis开发与运维》怎么看 + 重点章节,对应的电子书这里下载:书籍推荐。之后再看深入学习的专栏。
时间安排:(1)+(2)可以先学,7天,(3)晚点学,因为这块你用的少,容易忘记,可以等你学完了项目,有时间再来学。
4、八股文复习:八股文是我们的核心,不过你其实很多都学过了,咱们先快速复习下核心的吧,之后有时间在系统学习下。
(1)C++:目前C++八股文可以先看下这里的:https://www.iamshuaidi.com/mianshi 关于C++部分的,后续会整理一些突击的版本。
(2)mysql+redis+计算机基础部分:先跟着 八股文高频题库(必看) 进行第一轮复习,里面有Java的,别理即可,之后按 面试突击专题学习指南(必看) 进行第二轮复习,Java的不理即可。
时间:20天。
学习顺序
PS:算法2长期刷,穿插在整个学习中。
可以先学习完1中的入门项目,之后同步学习八股文,也就是1=》3=〉4。花两个月的时间,总体梳理下,就可以慢慢去面试了。
先给你安排这么多,然后记得来每周打卡学习进度哈,比如像他们这样:23与22届做的比较好的成员示例,
有什么问题记得随时私聊帅地
每周学习进度
3/5 ~ 3/10
收获: 作为刚开始的一周其实还是有很多不理解或者犹豫纠结的地方。比如说何时投递简历,学习方法以及听课方法等。不过这其中碰到问题也有和地哥及时沟通。虽然如此,还是走了不少弯路浪费了一些时间。周末的年级大会以及聚餐,周中的约面试以及投递简历都花费了不少学习的时间。还是决定先沉淀过这段时间之后再重拳出击。经过一周的过渡那么下周就应该拿出真正的效率了
任务模块:
– 网络编程目前学习到进程的wait函数。中间因为笔记记录的太过于详细浪费了不少时间,效率极低。其实第一轮真的不用记太多笔记,最多屏幕截图就可以了。这些东西之前或多或少都听过了解过,一遍下来其实蛮多知识点都能留下些印象的,这些后续复习八股的时候再加强巩固也是可以的,现阶段任务主要是快速过一遍把项目先完成
– 算法这块本周主要是刚起步,还不习惯脱离ide进行调试和问题查找,网页编程没法debug,编程时也没有函数提示,需要去背记stl里面的一些基本函数。主要学习了递归三步法(明确函数目标,确定返回条件,寻找递推表达式)以及链表(一定要记得当有使用结点的next变量时要确保当前结点不为空!!!这地方的报错这周见了不知多少次了!!!)部分,这两部分编程有一些共性问题,比如说返回条件和结束条件往往存在遗漏,但经过一星期的训练好了很多,至少思路是很明确的,现在一碰到if必先判断特殊条件,代码写法上也简洁了很多,后续希望通过继续训练学习能改掉之前的一些毛病,写出优雅简洁高效的代码。
下周目标: 网络编程入门这块必须结束,注意是必须。最佳进度就是把第二个项目开头。上周算法每天坚持三题或者以上成功从二分查找推进到优先队列,下周希望继续保持,每天坚持刷题3+。有问题会继续和地哥沟通,尽量在指导下少走些弯路,提高效率(不过他有时候回消息确实慢了点。。。(本想添加表情但markdowm不支持。。。要添加的表情可以想象下))
3/10 ~ 3/17
收获: 这周的的学习比上周要顺利多了,不过中间还是会有一些问题,感觉自己有时候还是会钻一些牛角尖的(比如说又去纠结笔试的问题。碰到一些难以抉择问题还是要及时沟通,这样节省时间还能提高效率,毕竟校招还是很容易踩坑的)。这周中间因为准备面试在算法模块上花了一些时间导致网络编程这块没有搞定,不过没关系,算法这块针对面试可以多刷刷,多温习,算法里面用到的一些思想还是很值得吸收并在思考其他问题的时候用上的。这周真的ddl,无论如何都要完成网络编程的模块了(简历要在下周之前投出,无论如何都要完善这部分的内容!!!)
任务模块:
– 网络编程目前学习到TCP,在上周的低效之后即使这周重心在算法层面但是仍然干完了两章(线程+进程开发)。这周要加快进度,重心应该是要放在这块和简历上的,算法可以稍微放慢点保持第一周的强度就可以了。这周搞定网络后面搞定气象之后最迟四月中旬要开八股
- 算法部分本周进度较快,已经搞定数学模块要开贪心了。数学模块和位运算这块比较抽象,很多题目都是自己第一次看到无法独立思考出做法的(很正常,以前没用过,也不知道可以这样用,毕竟一般情况下数据都不会以二进制运算展示在用户面前,这可能要对计算机的运行底层要有一些了解,非科班出身是很难想到的,但是不影响我觉得这种方法很妙)
本周算法的重心在于整个二叉树模块。这部分其实蛮考验一个人的思考能力。之前我也很困惑到底如何才能独立想到算法题的求解方法。但我觉得刷题多了才能有心得,现在这个阶段刚开始就焦虑这个问题还有些太早了。(引用地哥在递归课中的原话:年轻人还太年轻,有些东西你暂时还把持不住(笑死。。))就像模型一样训练样本不足当然没法得到好的推理结果,更别说举一反三的能力了,这个不用急,见多识广,有自己的心得了自然会有自己的思考,这应该是水到渠成的事情。
下周目标:
– 结束网络编程,修改简历并确定现阶段简历的最终版本
– 算法保持第一周的刷题强度即可,这周任务比较重稍微偏向网络编程,这个是现阶段的任务
3/18 ~ 3/25
收获:完成上周要求的保底任务(结束网络编程项目),并开始进行气象项目的学习。算法本周进行到动态规划,预计最多两周可以结束一轮刷题进行二轮二刷
任务模块:
现在对于网络编程和计算机网络有了初步认识和大概了解,希望通过气象项目可以进一步巩固目前所学。我感觉做一遍项目加上看一遍项目八股,基础知识和项目流程就能留下一个比较好的印象理解的七七八八了
算法本周的核心在于回溯法(暴力枚举),还是希望能掌握好回溯的方法和思想,并在未来的笔试中通过暴力枚举骗取一些分数。
下周目标: 入门数据库,上手实操气象项目,争取清明把它搞定,准备开八股学习。
算法可以冲一波,这周一刷完成,实在不行下周搞定也可以
3/26 ~ 4/1
收获: 算法目前差五节课过完,气象进度为c++开发oracle。本周刷了几道leetcode上的多线程题目保底,锻炼一下自己的线程开发以及统筹能力。我觉得有问题还是要多问,毕竟地哥还是很有经验的,有些问题可能我觉得只有这地方不懂,但实际上可能是更底层或者是其他方面没有掌握才导致这里欠缺,行家看到的往往比我们自己能看到的要多得多。还有,dp的原理视频分析的真的很透彻,听完再来听算法课就能发现其实dp三部曲就是用的一样的分析思想,瞬间感觉通透了
任务模块:
气象这里补充了一些之前网络编程没有强调的以及有些遗忘的点。已租用阿里云的服务器来做气象开发,环境已配置成功代码也跑起来了,入门了数据库开发的工具
算法本周的核心在于dp,还是要多练一下,后面二刷的时候希望自己能推导出dp的含义,自己推出转移方程。
下周目标: 开八股(先c++以及网络编程的),完成算法一刷,两周之内完成数据库剩下的开发,四月中旬去投简历了。
3/27 ~ 4/8
本周清明休息了两天。算法目前在刷高频题目,气象还有两周结束。本周将结束气象开始八股文的复习。首先从c++,网络编程以及操作系统开始。
4/9 ~ 4/22
没想到上周因为高强度备战华为笔试忘记更新周结,第一周主要是恶补笔试,熟练使用c++中的字符串输入以及恶补图论以及拓扑排序方面的知识(虽然华为笔试还是没过). 这段时间主要还是练习各大厂的笔试为主(做大厂笔试还是很有收获的对于coding能力的提升),另外开始看sql系列文章(还是蛮难的,有些地方比较难以理解)。另外开始海量投递简历(蛮花时间的,要看岗位,公司以及填写个人信息,非常繁琐以及劳累)。后面的任务只会更加繁重,真的任重道远(为啥一天就不能给我48h)。补充:上周刷完了牛客上的sql基础39题,对于sql语句以及联表查询的一些操作也基本熟悉了
4/22~5/1
30号刚结束大创答辩,由于是负责人因此这周不少时间都花在了项目上。所以上周实际上真正的收获在于实际上手了嵌入式ai的部署,知道了如何在开发板上进行模型推理(也就是边缘计算)。结项后也及时更新了简历。下周将继续八股的学习,主要还是理解为主吧,毕竟太多了真的很难完全背诵。任何一个东西的出现都是有原因的。看似没有必要或者是繁琐的操作必然是为了解决一些比较严重的问题。多想想为什么要这样做吧
5/2~5/13
本来想51的时候好好复习的,结果又被抓回实验室干了几天活。。。1号那天更新了简历,又花了一天的时间去详细看了模型量化和边缘计算的文章,感觉就简历上的提问只要不是特别刁钻应该都可以应付了。这段时间陆陆续续做了一些笔试,笔试是真的细。结合目前的笔试面试体验来看,笔试中不会的细节题目争取记录下来,我觉得笔试那些细节的部分搞懂对面试也是大有好处的。虽说做成一坨可能无法通过了,但至少要知道自己错了哪里及时查缺补漏。
综合笔面试比较缺的地方有:一些常见数据结构(红黑树),计算机网络(https,websocket),操作系统(linux的细节),sql(重灾区,看了就忘一做就懵,真的要反复看)
另外就是一些心得吧。
- 笔试还是要相信自己的第一直觉!!!有些东西还是很直观的比较条件变量的初始值,监视4个进程就设置为4就好了,当变成0的时候直接退出表示进程全部运行完毕。
- 然后发挥选择题排除大法去做,尽量猜对一些。然后shell脚本命令这些要查看或者操作的命令语句也是很直观的,从头就是head,从尾就是tail,不用想这么多的其实
- 还有一个就是想到什么都可以大胆写的!!海康的的sql大题就是这样。本来是想到读未提交的情况了但自己觉得不合理然后就没写。其实确实一个事务是可以读到另一个事务还没有提交的数据的!!!这些东西当时自己或多或少都有看过,有些印象想到了其实真的可以大胆写上的(不用管关键词,也不用管是否合理,有印象就用自己的话,自己的理解写上去交了就可以了。毕竟除了阅卷人也没人知道你写的有多一坨,不用怕丢人哈哈)
5/14~5/23
现阶段终于是找到了实习。连着两个周末三场笔试,笔试还是有很多东西值得总结,笔试过程碰到不会的都尽量做记录笔完之后拷打gpt。回顾最近的投递感觉sql数据库这块在秋招之前必须完善了,不然后面秋招再去投递感觉也会像现在一样困难。下周还有几场面试和笔试,做完之后暑期实习的投递应该就告一段落了。八股这块这周在c11上花费了一些时间,因为c11其实很多概念之前还是没接触过或者理解不深的。预计本周结束c++八股部分,后面应该就是去搞定训练营中的面试八股部分。计网这边最近笔试被反复拷打,虽说笔试每次都做的一坨但是还是查缺补漏了不少东西。后续的话八股复习应该就优先看一下操作系统那边,毕竟linux里面的一些东西笔试考的也很多。c++的主要八股模块搞定之后后续应该就全力冲刺数据库的项目和sql八股了。最后算法和笔试也应该持续练习,尽量不要忘了之前的东西。(不过我感觉无论是笔试算法还是面试算法,理解原理和思路之后两者其实相辅相成)
***~7/7
突然发现有很长一段时间没有更新了。六月一直在被实习以及期末考试的事情折磨因此面试的准备这块就落下了。后面应该要重新拉起来,c++这一块因为公司的代码比较猛用的全是c++17以上的新特性,因此对于以前背过的八股有了比较深刻的理解,公司对于c++的要求比较高因此很多时候都是基于底层去理解的这就非常nice。因此后面的八股复习可能就更多以计算机网络,sql和redis为主了。暑期实习因为简历上没有sql的技术栈还是比较吃亏的,秋招还是希望能扭转这个局面。目前实习主要是通过python开发去熟悉业务,真没想到python这上面差的不是一点半点。公司的python写的非常规范,好好的python函数硬是变成了c++中lambda函数的样子。后续看一下是否可以将原来的气象项目写上简历,这个确实比较贴合一般公司的落地项目。