24届211院校C++开发岗-华为OD面经(机考180分低空飘过,定级D1)
24届某211,考研失败后匆忙投入春招,缺乏实习经历且项目没几个,多次投递大厂未果。接到offer的就几个小厂,学长推荐我试试华为OD,然后找到了鼠鼠,C++基础还可以决定尝试婴一下。机考险过,最终定级D1。
面试
我就刷过LeetCode简单题50+,对动态规划、图论等中等题毫无头绪。
鼠鼠对接给我发了机考专项题库,但是考前3天才突击刷题,日均20题暴力速记
机考惊魂(2.20):
题目:
1. 字符串分割按规则分割字符串并统计子串数量2. 员工工号生成逻辑简单但输入处理复杂,因cin
格式错误卡壳半小时,最终通过
3. 二叉树节点距离,完全没思路,暴力DFS仅通过30%
总分180:险过及格线啊,考后心态爆炸,鼠鼠给我说能过就行
综测(2.21)
按鼠鼠提供的阳光奋斗青年人设答题,一点问题没有
HR资面(2.23)
核心问题:
- 空窗期规划(考研失败后如何提升,复刷C++ Primer + 自学Linux)。
- 能否接受OD性质?我说更看重技术成长,相信内部晋升机制
- 期望薪资?按鼠鼠建议报15K 10分钟速通
技术一面(2.24)
- 虚函数表原理?基类存储虚函数指针,子类重写后指向不同实现
vector
扩容机制? 2倍扩容,迭代器失效问题- 手写单例模式(饿汉式),要求线程安全,加
mutex
后通过 手撕代码:反转链表,5分钟直接ko 项目尬聊:说课程设计图书管理系统被问及“如何优化性能?”稍微回答了一下
技术二面(2.25)
深度拷打:
unordered_map
哈希冲突解决?答开链法,链表过长转红黑树- TCP粘包处理?答定长报文头 + 分隔符,但实际没写过代码
- 手撕代码:最小栈,辅助栈思路正确,但
pop
时未判空,面试官提示后修正 定级分歧,一面说可以D2, 二面认为项目经验不足,需加面
技术加面(2.26)
- 如何用
std::thread
实现生产者消费者?伪代码写了个带锁队列,问我 死锁场景,答未考虑双重检查锁定 - 手撕代码:爬楼梯(变种),要求空间O(1),用滚动数组通过
最终合议定级D1。
主管面(2.27)
主管面我就不说了,积极主动就行,有啥说啥,没啥就编
总结
全程如坐过山车。
刷题哪怕只刷简单题,也要确保AC率。
寄语:低分飘过不可怕,关键要让面试官看到潜力感谢鼠鼠深夜陪聊>.<#牛客AI配图神器#