一巴育面试经历
公司 : One payu india , Gurgaon
简介:软件工程师
第 1 轮:编码轮
由 1 小时内完成的 5 个编码问题组成。其中大多数是基于算法的,但也有一些是临时的。每个人都有一组不同的问题,这些问题是从一堆问题中混杂而成的。做3,你肯定会进入下一轮。
大约 30 人入围面试。
面试官主要关注编码知识和技能。
记不住所有的问题。
在所有三个面试中,我必须为所有问题编写代码。
技术面试 1(50 分钟) :
1. 说说你自己。
2. 给定一个大小为 n 的整数数组,其中没有。从 1 到 n+1 。找到丢失的号码。预计至少有两种解决方案。
3.链表中的P节点问题。解决方法。我告诉他弗洛伊德循环。他问我为什么将快速指针移动了两点而不是四点。告诉他我们必须检查多个条件以查找是否存在第二个/第三个/第四个节点,否则如果我们尝试访问一个不存在的节点,那么这是一个运行时错误。他看起来很满意。
4. 什么是栈?
5. 查找前导元素和 ii) 数组中所有元素的下一个更大元素。
5. 判断一棵树是否是 BST。给了他 2 个解决方案:中序遍历并检查是否使用数组或无数组排序,以自上而下的方式使用递归。他期待另一种使用 bst 属性的解决方案。告诉他最小,最大解决方案。告诉我编码后两个。
6. 游戏题:2人轮流玩。第一总是要赢。他可以选择是先玩还是第二玩。有一系列硬币(整数)。一次玩家只能选择极端。例如:1 3 2 17 9 所以玩家只能选择1或9,如果选择9则其他只能选择1或17。最终硬币总和最大的玩家将获胜。玩家 1 会选择什么策略永远获胜。在面试官的帮助下解决了这个问题。他扩展了问题。现在玩家 1 必须以最大总和获胜(一个很好的 dp 问题)。
一轮非常好,面试官说他印象深刻😀。
技术面试 2(1 小时) :
1.给定一个文本 .there 有一个字符串在文本某处是原始字符串的旋转版本 .find 并更正文本中的旋转字符串.ex: text – 1990 年代有一家名为entureacc 的公司。字符串:口音。使用 2 个数组给出了解决方案。他告诉我利用空间('')和代码解决方案。所以我使用空间作为分隔符并使用 26 大小的字符数组编码解决方案。
2.反转字符串中的每个单词。编码吧。确保您的代码没有任何错误并尝试更快地编写代码。
3.关于上一轮提问的讨论。
4. Java中的多级和多级继承。 Java中是否存在多重继承,为什么?
5. 设计问题:i) 设计汽车,ii) 设计电梯系统。
6.骆驼香蕉拼图。谷歌它的问题陈述。
7. 树中的边界和之字形遍历。
这一轮很完美,我立即被要求参加第三轮。
技术面试 3(50 分钟) :
看起来像一个警察审讯室,只有两把椅子和一张桌子。面试官告诉我,我必须为这一轮的所有问题编写完整的代码。我保持自信......从外面......
1)使用O(1)空间将方阵旋转90度。这个问题对我来说是新问题,在面试官忙于他的笔记本电脑时挣扎了大约10-15分钟后,我解决了它并为其编写了完整的代码。
2)给定一棵二叉树,我得到了两个指向树中两个节点的指针 p1 和 p2,我必须交换以这些节点为根的子树。他问我这个问题的基本情况。我告诉他 p1 和 p2 都不应该是其他 .p1 的祖先, p2 应该在树中,它们不应该是 null 。另一个限制是我只能遍历树一次。我告诉他我会找到两个节点的 lca 并使用数组跟踪这两个节点的所有祖先,然后使用这个数组来执行交换。告诉我编码。
人力资源回合(电话) :
只是一个形式。问了关于我自己的一切。前几轮的情况如何。我对payu的了解。搬迁、CTC、工作日等
推荐阅读:geeksforgeeks.org/data-structures,headfirst for Java,pk biswas 的操作系统视频讲座。