第一回合(电话)
- 2D数组的动态内存分配
- 多态如何在C++中工作(Vptr和Vtable实现)
- 烧绳之谜(测量45分钟)
第二回合(Skype)
- 在数组中找到最大重复元素。元素将始终为<= k,其中k为0 <= k <= n
- 有在线歌曲目录(如Saavn或Gaana)。您每天如何向用户显示喜欢的歌曲。需要高效的算法。 (K个最大解决方案/最小堆解决方案)
第三回合(F2F)
- 同样,多态是如何工作的。绘制vtable和vptr
- 生产者消费者问题与同步(完整代码)
- 互斥量,信号量和condition_variable之间的区别。
- 设计停车场系统
- 二叉树的锯齿形遍历
第四回合(F2F)
- 他问生产者消费者问题,但我告诉过同样的问题。
然后,面试官去问很多有关生产者和消费者的问题。许多讨论,例如什么是作家,都没有,只有读者在那儿,您需要找出当前有多少读者正在从缓冲区读取内容。 - 关于C++ 11功能的讨论。线程和aysnc有何不同
- 设计自己的shared_ptr(如何处理所有权)
- 检查二叉树是否对称。
- 在旋转的排序数组中查找元素,然后对其进行优化。
第五回合(招聘经理)
- 您将获得旋转功能,该函数基本上可以拍摄任何物体(例如2d图像,3d图像,音频,视频)并将其旋转180度。您需要设计功能。您只知道那里有什么类型的对象。 (工厂设计模式)。
- 表达式评估(唯一的约束是每个操作数将具有不同的单位)。例如ex-40英寸+ 2 * 2cm + 11 / 2mm + 12 * 2 / 6cm。您将拥有需要转换的最终单位。
- 3. 1个谜题
第六回合(导演回合)
- 为什么要离开当前的公司和其他行为问题。
- 设计餐厅查找器应用程序。您只有用户的位置,并且需要找出附近的所有餐厅。您没有任何外部地理位置API。关于如何划分区域以及如何存储数据的许多讨论。
相关实践问题
螺旋形式的水平阶遍历
查找号码
Adobe的所有练习题!