📜  OYO客房面试体验(校内)

📅  最后修改于: 2021-09-22 10:30:03             🧑  作者: Mango

第 1 轮:第 1 轮是 200 分。 25 个 MCQ 和 2 个编码问题。MCQ 主要是关于能力的,有些是技术(C++ 输出问题)问题。每个 MCQ 带有 2 个标记。一个编码是一个简单的问题(50 分),另一个是中等水平(100 分)。
第一个问题是 https://www.geeksforgeeks.org/minimum-number-of-bracket-reversals-needed-to-make-an-expression-balanced/
第二个问题是 https://www.geeksforgeeks.org/stock-buy-sell/ 。我递归地解决了它,它通过了所有的测试用例。

第二轮:我入围了下一轮。这是一对一的面试。面试官问了我两个关于数据结构的问题。

  • 打印二叉树的 2 个节点之间的所有祖先。它是对以下问题的修改
    https://www.geeksforgeeks.org/lowest-common-ancestor-binary-tree-set-1/
  • 给定一个排序数组,尝试找到 a[i]=i 的元素。我给出了这个问题的线性解决方案。面试告诉我要优化它。所以我用二分查找来做这个操作。 https://www.geeksforgeeks.org/find-a-fixed-point-in-a-given-array/

第三轮:面试官问我为什么要加入OYO并自我介绍。然后他问了我2个编码问题。

  • https://www.geeksforgeeks.org/find-maximum-possible-stolen-value-houses/。我首先给了他一个 O(n^2) 的解决方案。他对这种方法不满意,并要求我对其进行更多优化,并给了我一些提示,这就是我如何得出 O(n) 解决方案的方法。
  • https://www.geeksforgeeks.org/find-next-greater-number-set-digits/
  • 除了代码,饥饿和死锁(OS)之间的区别以及为什么我们需要这么多调度算法。


第 4 轮:
这是最后一轮。面试官问了我 2coding 和一个拼图。

  • https://www.geeksforgeeks.org/find-if-there-is-a-subarray-with-0-sum/
  • https://www.geeksforgeeks.org/print-left-view-binary-tree/
  • http://www.mytechinterviews.com/one-box-of-defective-balls 。我无法找到解决方案,所以他帮助了我,然后将问题修改为“如果有 n 个桶和 m 个有缺陷的桶,你将如何找到 m ? “
  • 毕竟,他让我在 OS、Networks、dbms 中的任何一个中进行选择。我选择了操作系统,所以他问我,如果有一个临界区,如果只有两个线程应该访问它,我应该用什么来做它。我告诉他,我会使用长度为 2 的信号量,以便一次只有 2 个线程可以访问它。

经过如此漫长的过程,我终于被 oyo 选为(FTE + Intern)。