OYO Rooms 面试体验 |第 5 组(适用于 SDE2)
第一轮:笔试,两道题
- 给定一个包含正数和负数的大小为 n 的数组。查找总和为 0 的子数组的计数。
- 将 next 指针添加到存在于同一级别的每个节点。
第 2 轮:数据结构和算法
- 首先讨论我的书面测试问题的方法和代码
- 铁路汽车站所需的最少站台数量
- 给定一个大小为 m*n 的棋盘。一个骑士出现在某个初始位置。找到最小的移动次数,以便它可以移动到某个给定的最终位置。
提示:想想 BFS
第 3 轮:算法、设计和 OOPS 概念
- 设计一个坦克游戏。
具有类和功能的 HLD 和 LLD。设计模式、抽象类和接口
- 源源不断的数字流来了。在任何给定时间找到中位数。算法和代码
提示:假设 m 是任何给定时间的中位数。使用大于 m 的最小数字堆和小于 m 的最大数字堆。现在检索是 O(1),插入是 O(log n)
- 设计whatsapp。只是高级设计
- 部署如何在多台服务器机器上工作。 AB 测试的概念和其他一些问题
第 4 轮:算法、设计、多线程、并发、数据库概念
- 问题1:给定字符串字符。您需要以最低成本将其转换为相同长度的给定新字符串,其中:
a) 'b' 可以转换为 'a' 或成本为 1 的 'c'。其他字符也是如此。
b) 任意数量的 b 可以转换为成本为 1 的 c,也可以转换为成本为 1 的 a。
- 给定多个给定高度和单位宽度的条。找到面积最大的矩形。
- 设计自动售货机
- 您将如何选择为索引选择哪一列。
- 数据库中的分片。 facebook 如何将它的用户数据库分片
- 关于多线程、不可变类、并发的问题
第 5 轮:设计、以往经验和实际问题
- 解释我喜欢从事的任何 1 个项目
面试官对我的项目不感兴趣,转到了一个设计问题
- 从所有用例、HLD、LLD 开始设计交通信号灯
- 设计电梯系统
我最喜欢的设计模式以及我会在上述问题中使用哪些模式
我会在设计审查和代码审查以及其他一些行为问题中看到什么