📜  Adobe 面试体验 |第 38 组(4.6 年经验)

📅  最后修改于: 2021-09-23 05:46:21             🧑  作者: Mango

第1轮:
一季度。实现 memcpy函数。如果用户传递的 noberOfBytes 小于等于 0,您如何让编译器发出警告。
Q2。编写代码将两个矩阵相乘。
Q3。什么是 SIMD?
第 4 季度。什么是不同的 IPC 机制。
Q5.给定两个节点的指针,找到 N-ary 树的最小公共祖先。树结构也有父指针。
Q6.动态规划的原理是什么。

第二轮:
一季度。当有人上传照片时,设计与 facebook 相似/不同的功能。
你如何通知已经喜欢这张照片的用户。(观察者模式)
1000万用户同时喜欢这张照片,你如何处理这种情况。
解决方案:(基于负载均衡在多台服务器上复制照片实例,并做并行缩减技术,为每台服务器做like++(lock like in each server),然后将赞数广播给其他服务器)
Q2。编写中序遍历树的代码。递归和迭代使用堆栈。
Q3。给定一个大小为 nxn 的矩阵,从 0,0 到 n-1,n-1 有多少种方法。递归和基于 DP 的解决方案。
第 4 季度。给定一个大小为 nxn 的矩阵,并用 0 和 1 填充。你不能以零进入单元格。从 0,0 到 n-1,n-1 的最短路径是什么?递归和基于 DP 的解决方案。

第三轮:(导演轮)
一季度。为什么我们需要复制构造函数?
Q2。为复制构造函数编写方法签名。
Q3。为运算符重载编写方法签名。
第 4 季度。实现一个支持 push 和 pop函数的堆栈。编写生产级代码。
一些与工作和行为问题相关的问题。

第 4 轮:
Q1.有两个玩家A和B。
金罐排成一排,每罐装一些金币(玩家可以看到每个金罐里有多少金币——完美信息)。他们交替轮流,玩家可以从线的一端选择一个锅。获胜者是最后获得最多金币的玩家。
目标是最大化 A 收集的金币数量,假设 B 也发挥最佳效果。 A 开始游戏。你需要告诉玩家双方的最终状态。
Q2。我们可以做 array[i]=i++;

Adobe 的所有练习题!