MTS-2 的 Adobe 面试体验
第一轮:技术面试第一轮
第一轮是与一位从 C++ 基础开始的高级计算机科学家:
- 复制构造函数
- 移动构造函数
- 共享指针
- 虚拟 Fn、Vtable、Vptr
- 虚拟构造函数和析构函数和更多相同。
- 之后是基本的数据结构以及它们如何在内部工作。一些 DS 问题:就像在 LL 中找到循环,使用 LL 创建队列。
提示:具有良好的 C++ 基础和 DS 基础
第二轮:技术面试第二轮
第二轮又是一些高级技术人员。
- 再次涵盖了所有 C++ 11 基础知识,一些基于设计的问题,例如我在当前公司项目中使用了什么以及使用了哪种设计。
- 一个简单的 DSA 问题
- 交换数组中偶数位置的元素
Input:
1 2 3 4 5 6 7 8 9 10
Output
1 10 3 8 5 6 7 4 9 2
第三轮:技术面试第三轮
这一轮是与招聘经理一起进行的。
- https://www.geeksforgeeks.org/given-an-array-a-and-a-number-x-check-for-pair-in-a-with-sum-as-x/
- https://www.geeksforgeeks.org/puzzle-15-camel-and-banana-puzzle/
- https://www.geeksforgeeks.org/puzzle-21-3-ants-and-triangle/
第四轮:导演轮
- 这也是一个技术回合。你必须期待一些数学问题。这是该过程的最后一轮。最有可能的是,您不会被要求编写代码,而是告诉您方法。
- 一些基于设计的问题很可能与您正在寻找的角色有关。
- 最终在 C++ 中设计 Set 类的一种实现。它不仅要定义像插入和查找这样的基本函数,而且还要支持像集合并集和交集、迭代这样的附加功能。我没能在 10 到 15 分钟内完成,这一轮对我来说并不顺利。另外,我的互动一开始很温和,但到最后,它并没有像我预期的那样进行。因此,您可能需要在这一轮比赛中保持冷静,因为您可能会在很短的时间内被本轮比赛中的不同事物所困扰。
- 在所有轮次中,您都会被问到您目前在做什么以及您是如何做的。所以要清楚这一点。我的所有轮次都进行得很好,除了最后一次与导演的比赛,所以请确保你在所有轮次中都表现出色才能被选中。
祝一切顺利!