个人情况:22届本科,工科专业,非科班,无工作经验(考研)。
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
内容参考:
1.自我介绍
2.个人情况
3.断档原因
4.家庭情况
5.根据简历内容提问
6.觉得自己有什么优势
7.是否有其他offer
8.为什么选择来OD
9.职业规划
9.薪资期望
10.反问环节
面试语言: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.多线程与多进程有什么区别
面试语言: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栗栗,人很好,很热情,有问必答,无论是在面试还是入职过程中都帮了我很多忙,有需要的可以尽管来找她