Adobe 面试体验
资格赛(在 Hackerrank 上进行的在线比赛):
这一轮有两个部分——编码和能力。编码部分有三个问题:-
- 一个圆圈中有 n 个城市,并且给出了每对相邻城市之间的距离。我们被要求确定一对城市,以使它们之间的最小旅行距离最大。
- 有 n(n 是偶数)个人坐在一张圆桌上。我们必须找到使每个人与另一个人的手完全握手的方式的数量,这样就没有握手的交叉。链接 - https://practice.geeksforgeeks.org/problems/handshakes/0
- 给出了一个由 N 个节点组成的有向加权图,其中每个节点都有一个人质。还提供了源节点和目标节点。 N 名士兵从源节点出发,每个士兵的任务是拯救一个人质。拯救一名人质的成本是从源节点到人质被扣押节点再到士兵劫持的目标节点的路径权重之和。我们必须尽量减少拯救所有人质的总成本。
我使用 Dijkstra 的算法来解决它,但犯了一些错误,它部分运行。
第1轮:
- 面试官给了我一个算术表达式(中缀),让我把它转换成后缀,然后让我在一张白纸上写一个算法。转换也一样
后缀为中缀。
中缀到后缀 - 我写了一个关于排序算法分析的项目,她向我询问了我编写的所有排序算法的所有最佳情况和最坏情况示例。
- 然后她问我一些OOP的基本概念。
- 然后她给了我一个与最长公共子序列问题有关的问题。
- 她还问我关于机器学习的项目。
第 2 轮:
- 找到 k-Fibonacci 数列中的第 n 个元素(一个元素是前 k 个元素的总和)。首先,我给出了 O(n) 时间复杂度和 O(n) 空间复杂度方法,一段时间后使用队列给出了 O(n) 时间复杂度和 O(k) 空间复杂度方法。
- 汽油泵问题
- 在水瓶的帮助下解释临界区的问题。什么是死锁并解释它的四个特点。
- 什么是颠簸以及何时发生。
第三轮:
- BST 中最低的共同祖先。
- 以螺旋形式打印给定的矩阵。
- 谜题 1 - https://www.programmerinterview.com/index。 PHP/puzzles/8-pennies-find-lightest-7-equal/
- 谜题 2 – https://www.mathsisfun.com/puzzles/weighing-10-bags-solution.html
第四轮:
在这一轮中,面试官问了我关于我的机器学习项目的每一个小问题,最后给了我一个问题。
- 整数流中的中位数(运行整数)
第 5 轮是 HR 轮,然后他们告诉我我被选中了。 GeeksforGeeks 在准备 Adobe 方面帮助了我很多,谢谢 GeeksforGeeks !!!