秋招提前批,这个岗位是偏开发的,牛客上这个方向的面经不多,分享给大家~
一面
流程:
介绍下自己性格优缺点——C++基础——OpenGL基础——OpenCV基础—没问项目
问题:
vector与list区别
vector内存管理,capacity与size
几种智能指针和原理
智能指针运算后计数多少
C++多态实现机制
静态与构造函数能否为虚函数,析构函数为何是虚函数
C与C++内存块区别
堆栈的原理
C++怎么管理内存,new delete?
2-3树有写过吗?没写过,pass
1. 手撸双向链表返回相同的值
2. 手撸反转双向链表
OpenGL渲染管线
说一下Phong光照模型
说一下MVP矩阵(model, view, projection)
为什么法线图基本是蓝色的
有没有用过PBR材质
怎样滤除图像噪声并让图像保持清晰
如何优化高斯滤波
问我还有什么问题,结果在1周内通知
二面
面试官迟到了一会,很忙的样子
自我介绍下——OpenGL相关——手撸代码
一面面试官反馈C++基础很好,二面就不问了
就问了一个一面中问过的,析构函数可以是虚函数吗,为什么?内存泄漏
OpenGL想让画面中的某一物体变大,有哪些方法?
答:修改model矩阵齐次项,减小fov,几何着色器,帧缓冲纹理放大
怎么使用帧缓冲?RBO了解吗
帧缓冲什么时候绑定纹理,什么时候绑定RBO
说一下 Z buffer,深度缓冲原理,开启模式
同时渲染不透明和半透明对象,怎么办
手撸代码:
1. 字符串全排列 剑指offer38 秒了,面试官说这种hash表的解法还挺精妙,是不是练过?
不用hash表怎么做,讲思路,然后又写了一种递归回溯的代码
2. 有用过哪些设计模式?工厂模式原理?能不能手撸下?工厂略微复杂,撸了个单例模式
3. 使用int数组实现单端队列,不能使用标准库,要求能自动扩容,写了一个版本,在面试官引导下不停优化,优化到写不出来为止
三面
面试官应该是个总监/leader
自我介绍
三面就没问基础了,聊了下在学习做的科研项目(30分钟+,我的方向是MVS+IBR)
项目内容,过程结果,角色,项目成员分工,我的贡献,遇到的困难,怎么解决的
项目中用到了机器视觉和OpenGL,讲下两者涉及到的坐标系及其变换,越详细越好
讲一下渲染管线,分广义和OpenGL的讲了下
看一下C++的一道题,说下输出。涉及到虚函数,父类非虚调用虚函数(有多态,调子类),析构顺序,子类析构后父类调用虚函数(由于虚指针被删除,无多态 ,调父类)
算法题:已知三维向量V1,V2,V3表示一个平面,P1,P2表示一条直线,计算直线与平面交点。
当时没有很好的解法,先是判断了特殊情况(无面,无线,平行),提了一种旋转平面后求交的方法,面试官说太复杂了想想其他的(其实我是知道有一种数学方法公式挺方便,但忘了具体内容了)面试官看这情况就让写了判断特殊情况的代码,
做不出来算法题以为GG了,但还是继续聊,
问个人爱好,现在在家还是学校,最近忙什么,
论文怎么样,毕业情况,和导师关系,能不能来实习
最后leader介绍了整个部门,团队干什么的,负责字节核心渲染引擎开发,支持抖音西瓜多条业务线,和一些现有的成果。
最最后问我,如果拿我现有的项目成果,可以做个什么?早有准备,然后他说他们已经有在做相似的
一个小时后hr告诉三面通过
HR面 2020.8.04
1. 自我介绍,哪里人
2. 围绕大学生活,科研与学习,一大堆
3. 求职方向,投了哪些,为什么
4. 职业规划
5. 为什么来杭州
6. 如何看待字节,发展,文化,各种
7. 了解互联网公司氛围吗?北邮的能不了解
8. 如果多个offer,怎么抉择?
9. 还有一些其他的各种吧,感觉如实真诚回答就好,语气要让人感觉有活力,答案上让人感觉你有拼劲,有理想,符合字节的价值观
10. 介绍了一大堆字节的情况,mentor培养机制等
全部评论
(1) 回帖