涟漪面试经历 |实习生+FTE 校内
第 1 轮(在线技术编码轮 - 1 小时):编码轮在 HackerEarth 平台举行。它包括3个问题:-
- 给定一个包含 N 个整数的数组。有 2 个玩家,每个玩家可以轮流选择数组的第一个位置或最后一个位置的任何整数。如果第一个玩家进行初始移动,则计算第一个玩家和第二个玩家的得分之间的最大差异。与问题类似:- https://www.geeksforgeeks.org/optimal-strategy-for-a-game-dp-31/
- 计算范围 L 到 R 之间的正整数的数量,其中数字的数字总和是质数,其中 1<=L<=R<=10^18。
- 我没有时间正确阅读这个问题🙁 但这是一个与图表有关的问题。
权重:- 1-40 分,2-70 分,3-40 分
我完全解决了前两个问题,并入围了其他 9 名学生的面试。
第 2 轮(1 小时) ——这一轮的开始就像任何典型的面试一样;面试官自我介绍,让我自我介绍。然后他直接跳到他们的代码对ide上的编码问题。问了三个问题,其中提到了:-
- 给定一棵 n 叉树,找到具有最高平均值的子树的父节点。类似问题:- https://leetcode.com/discuss/interview-question/349617
- 给定一棵 n 叉树,找出我们可以向节点发出的最大邀请数,使得不能同时向 2 个直接连接的节点发出邀请。
- 最低数量迭代将信息传递给树中的所有节点。类似问题:- https://www.geeksforgeeks.org/minimum-iterations-pass-information-nodes-tree/
我被要求为所有问题编写代码。这一轮主要是根据解释技巧以及您是否可以按照他们的提示在给定的时间范围内编写解决方案而不会出现任何错误来判断的。
包括我在内的4名学生被选中参加下一轮比赛🙂
第 3 轮(1 小时)-这一轮是面向对象的设计轮。
- 首先,我被要求自我介绍,他对我的工作印象深刻。然后他询问了我的项目,以及项目过程中面临的挑战和困难,以及我未来如何解决这些挑战。然后他被问到一个设计问题,我需要以最佳的时间和空间复杂性来解决这个问题。
- 问题提到:设计和实现一个最少使用(LFU)缓存,在平局的情况下使用最近最少使用(LRU)。问题链接:- https://leetcode.com/problems/lfu-cache/
- 我被期望编写一个完整的设计问题,同时对我提出的解决方案进行适当的解释。在这样的设计问题中,你需要正确地遵循面试官给出的提示。
最后,包括我在内的2名学生被选中🙂
最后,如果我能进入 Rippling,相信我任何人都可以。如果即使您付出了巨大的努力,但您仍然被拒绝,请不要灰心,请从中吸取教训并继续前进。我也面临过来自 Flipkart、摩根士丹利等公司的许多拒绝,但我没有失去希望,最终得到了更好的报价。所以只要对这个过程有信心,你的努力就会得到回报。
谢谢你🙂