第 1 轮(电话)
- 二维数组的动态内存分配
- 多态在 C++ 中是如何工作的(Vptr 和 Vtable 实现)
- 绳子燃烧拼图(测量 45 分钟)
第二轮(Skype)
- 查找数组中的最大重复元素。元素总是 <= k 其中 k 是 0 <= k <= n
- 有在线歌曲目录(如 Saavn 或 Gaana)。您将如何每天向用户展示喜爱的歌曲。需要高效的算法。 (K max 解/Min heap 解)
第 3 轮(F2F)
- 再次,多态是如何工作的。绘制vtable和vptr
- 同步的生产者消费者问题(完整代码)
- 互斥量、信号量和条件变量之间的区别。
- 设计停车场系统
- 二叉树的Z字形遍历
第 4 轮(F2F)
- 他问了生产者消费者问题,但我说上一轮也问了同样的问题。
然后面试官问了很多关于生产者和消费者的问题。很多讨论,比如什么是作者,而只有读者在那里,你需要找出当前有多少读者正在从缓冲区读取。 - 关于 C++11 特性的讨论。 thread 和 aysnc 有何不同
- 设计你自己的 shared_ptr(你将如何处理所有权)
- 检查二叉树是否对称。
- 在旋转排序数组中查找元素,然后对其进行优化。
第 5 轮(招聘经理)
- 您将获得一个旋转功能,该函数基本上将采用任何对象(2d 图像、3d 图像、音频、视频)并将其旋转 180 度。您需要在功能上进行设计。你只知道那里是什么类型的对象。 (工厂设计模式)。
- 表达式评估(唯一的限制是每个操作数将具有不同的单位)。对于前 40 英寸 + 2*2cm +11/2mm + 12*2/6cm。您将拥有需要转换的最终单位。
- 3. 1 拼图
第 6 轮(导演轮)
- 为什么你想离开目前的公司和其他行为问题。
- 设计餐厅查找器应用程序。你只需要用户的位置,你需要找出附近所有的餐馆。您没有任何外部地理定位 API。关于如何划分区域以及如何存储数据的讨论很多。
相关实践问题
螺旋形式的层序遍历
寻找号码
Adobe 的所有练习题!