当前位置: 首页 > 面试经验 >

华为OD-22届考研-C++面经

优质
小牛编辑
81浏览
2024-02-17

华为OD-22届考研-C++面经

个人情况:22届本科,工科专业,非科班,无工作经验(考研)。

  • 一、机试 (就刷了栗栗姐给的题库,蛮多,刷了20来天)

T1:求三个矩形A、B、C相交区域的面积,给出每个矩形的左上顶点坐标以及长宽数据。

T2:给定一个字符串,该字符串由 @ 分成两部分。@前的部分表示可以使用的字母及其数量。@ 后的部分表示已经被使用的字母及使用的数量。你需要按原字符串的顺序输出剩余的可使用字母及其剩余数量。

例子:

输入:a3b2c1@a1c1 输出:a2b2

T3:寻找单词。给定一系列等长字符串,组成一个二维矩阵。给定一个目标单词,判断是否存在一系列上下左右相邻的字母能够按顺序连成目标单词,若存在,按顺序打印每个字母在矩阵中的位置(连接时每个字母只能用一次)。

例:输入:ACCF,CDED,BESS,FECA target:ACCESS

组成矩阵:A,C,C,F

C,D,E,D

B,E,S,S

F,E,C,A

输出:0, 0 0, 1 0, 2 1, 2 2, 2 2, 3

  • 二、HR面试

内容参考:

1.自我介绍

2.个人情况

3.断档原因

4.家庭情况

5.根据简历内容提问

6.觉得自己有什么优势

7.是否有其他offer

8.为什么选择来OD

9.职业规划

9.薪资期望

10.反问环节

  • 三、技术面(机考以后参考栗栗姐的攻略准备了2周)
  • 【1】技术一面

面试语言:C++

内容参考:

1.编程

将一组IPv4地址格式的字符串按照升序进行排序,并讲解代码思路。

比较规则:192.168.1.1 > 192.168.0.1 172.168.6.1 < 192.168.0.1

2.介绍一个自己的项目或作品

3.如何对该项目的需求进行分析,并拆分项目功能模块

4.项目用到了MVC,讲解M、V、C分别负责了哪些功能

5.static的作用

6.vector和list的区别

7.迭代器的作用

8.冒泡排序与快速排序的算法原理

9.虚函数与普通函数有什么区别

10.多线程与多进程有什么区别

  • 【2】技术二面

面试语言:C++

1.编程:

Leetcode 165. 比较版本号

2.简单介绍简历上的一个项目

3.该项目的某个功能的算法实现思路

4.项目的程序设计问题

5.unordered_map 的原理

6.如何解决哈希表的冲突问题

7.进程间的通信方式有哪些

8.如何解决在工作中遇到的问题

  • 四、综面

内容参考:

1.自我介绍

2.断档情况了解

3.考研目标院校与专业

4.为什么选择考这个专业,而不是计算机专业

5.为什么当初选择考研而不是找工作

6.不是计算机专业,为什么选择这一行

7.本科专业、考研目标专业、就业领域方向差异过大,是否觉得自己没有选对方向

  • 总结:

1.技术面的难度不算太高,问的问题也是八股偏多(大概是因为没有工作经验),其余的也大都与简历内容相关。现场编程题目的难度不算高,但是限时40分钟,平时要注意多加练习。

2.HR面比较轻松,回答的时候要以实事求是为主,并要能尽量体现自己:① 有正常的交流与逻辑思维能力;② 有获得这份工作的意愿;③稳定性好 等。

3.综面时给的压力很大(因人而异),面试官的提问十分直接和尖锐,问的都是痛点,而且会追根问底。最好对类似的一系列问题提前做一个准备,不要被打个措手不及。

最后要感谢全程提供答疑和帮助的HR栗栗,人很好,很热情,有问必答,无论是在面试还是入职过程中都帮了我很多忙,有需要的可以尽管来找她

 类似资料: