24届空挡-C++开发面经..

#### 背景 

24届,211本、科班,gap一年。

#### 机考 

我是12.25联系的栗栗姐,准备机考的话栗栗姐会给你相关的题库,看着刷就行了,注意自己做,不要背答案,机考会查重的。   

题库几天刷了常见的题型加起来60+题吧,就让栗栗姐申请机考。收到机考链接后每天刷点leetcode hot100,再看点图论的题,拖到最后一天才机考。 

机考要下载牛客客户端,然后手机扫码完放旁边做辅助机位摄像头。进入后牛客直接全屏了,说是能切屏用ide答题,我没敢,直接在牛客上做题。 

我随机到的三道题都没做过,不过还好不是难题。 

**题目1、求面积最大的单入口空白区域的入口位置和面积** 

就O和X组成的矩阵,O表示空白区域,单入口指只有一个O在边界位置,比如: 

```text

XXXOOXXO

OOXXOOXX

XOOOXXXX

XOOXXXXX

XXXXXXXX

``` 

上面所示的单入口的区域有两个,一个是入口(0,7)位置,面积为1;另一个是(1,0),面积为7 

解法就dfs,过程加点其他判断,通过95% 

**题目2、题库原题,补种未成活胡杨** 

简单题,不定长滑窗,几分钟AC,但要注意重复率,因为本身就没几行。建议输入输出封装一下,弄复杂点。 

**题目3、拓扑排序** 

就A->C、B->C、C->D,完成前序才能接着下一步,写出任务完成的全部顺序,解法是拓扑排序,通过100%。 

--- 

准备阶段可以刷刷题库找找感觉,注意熟悉输入输出。其次是机考不能有瑕疵,比如某题重复率过高,否则没部门接。机考前栗栗姐还会发注意事项,多看看就行。 

#### 综测 

没啥好讲,主要选择积极向上的选项,注意前后一致。做前多看看栗栗姐发的那些攻略。

#### 资面 

中间家里有点事加上懒,所以拖了比较久。   

资面前会让选择base地,还会让你和部门沟通下,大概就是了解部门的业务和技术栈一些情况,有些部门还会问你点问题,比如gap原因、项目啥的。沟通完后觉得可以才会继续走下一步流程。可以把你的要求和栗栗姐说,让她给帮忙推相对合适点的。 

资面主要问的问题: 

- 自我介绍、是否有复读等经历、 gap情况、校招情况

- 谈谈对部门业务的了解(因为自我介绍有说匹配部门那会电话沟通的情况)。我回答后面试官又更具体介绍了部门的业务方向,然后问我能否接受。

- 对华为OD的了解、期望薪资、确认base地、 简单介绍项目、家庭情况、兴趣爱好

- 反问

- 后续面试官主动介绍了部门一些人员情况和加班情况,问我能不能接受(加班),全流程大概三十分钟。 

#### 技术一面 

八股问得很基础,可能是没经验的原因 

- 介绍项目

- C++类型转换、使用场景

- 智能指针、weak_ptr的作用、如何使用weak_ptr

- lambda表达式、C++新特性

-设计模式,举几个进行介绍、 C++编译过程 

手撕,在聊天框发题目,leetcode 56. 合并区间。写完后跟面试官过一下用例,讲一下思路就结束了。 

#### 技术二面 

上来先手撕,题目大概如下:

> 有一个长度为 n 的数组 nums,其中第i天你可以提交 nums[i] 个日志。

> 每提交一个日志可得 1 分,延期提交有相应扣分处罚,你只能提交一次。

> 如果积累的日志数大于等于 100,系统会强制提交100个日志。

> 写出最大的得分。 

解完后说了我的思路。 

二面八股问的也很基础,如果有些太简单的可以在回答过程中对涉及的点也展开讲讲 

- 询问gap情况、 面向对象特性、static关键字、struct和class区别、智能指针

- C++内存分配、谈谈对malloc的了解,和new的区别

- 设计模式、 介绍TCP/IP(很宽泛,从头到尾把涉及的知识点说一遍就行) 

#### 技术三面(加面)

前两面评级不一致,加面 

- 自我介绍

- 介绍项目、大学做的课设、毕设

- 回忆机考的三题,说思路、红黑树、排序算法、链表、和数组区别

- 二叉树最小节点数、 斐波那契数列、 讲讲对递归的理解

- 智能指针、 C++静态多态和动态多态

- 互斥锁、底层实现

- 如何防止new抛异常(std::nothrow)

- 如何防止vector频繁重新分配内存

- C++强制类型转换 

手撕,面试官口述问题,在ide上解题,然后粘贴到聊天框。问题是leetcode 698. 划分为k个相等的子集 

我的思路是贪心加双指针,当时用例过了但感觉不太对,但说思路后面试官没说啥。反问阶段,面试官反馈说项目经验不足,不过最终还是给过了。 

#### 综面 

感觉是压力面,体验不太好,会频繁打断你说话然后问问题 

- 自我介绍

- 询问gap(校招情况、在校情况、有投递过哪些公司,现在有没有其他offer)

- 看项目,然后简单挑了点东西问

- 看leetcode刷题情况,点进一题随便挑了个东西问

- 让你设计ATM机输密码的测试用例,怎么设计

- 兴趣爱好、gap期间的日常会做些什么、家庭情况

- 反问 

后续栗栗姐反馈部门池子人多,审批可能有点悬,要换部门。但是当天下午部门的HR又找我沟通薪资要往下走流程,不过薪资压太低,不太能接受,最终还是换了个部门。 

#### 第二次资面+综面 

还是部门电话沟通意向,确定后才走资面流程 

- 自我介绍、 gap情况、为什么换部门

- gap期间学了什么,有哪些收获

- 对于编程的学习,应该具备哪方面素质

- 谈谈你的协作能力,如何体现

- 如果入职你觉得会遇到哪些困难

- 你的期望薪资是xx,你觉得你为什么能值得这样的薪资

- 如果薪资不够预期会接受吗

- 对加班看法

- 反问 

资面后第二天临时通知主管面,面试官好像比较忙,临时抽出时间面试,只面了15分钟,简单问了一些情况。 

当天栗栗姐帮忙谈薪,确认后让提审批。审批大概花了10天这样。 

#### 总结 

OD的机试、技术面整体难度不算很高(可能也看面试官,我遇到的都没问很难的问题),平时多准备就行。资面综面就表现得积极点,如果零经验回答时可以多体现自己的学习能力、适应能力还有抗压能力之类的。

此外很感谢栗栗姐,当初沟通部门的时候方向不满意栗栗姐都积极帮换新部门,然后栗栗姐每个流程前都会提供资料,并且每次都会跟进流程然后反馈。

#华为od##华为##内推##面试##发面经攒人品#
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务