📜  DE Shaw 2022 年暑期实习生面试经历 |在校园

📅  最后修改于: 2022-05-13 01:57:55.177000             🧑  作者: Mango

DE Shaw 2022 年暑期实习生面试经历 |在校园

DE Shaw 于 2021 年 8 月的第一周访问了我们的校园(VJTI,孟买),进行了为期 2 个月的软件开发实习。

第一轮:编码测试

问题数:3 编码问题

每个问题都有一个单独的计时器,一旦计时器用完,就不允许尝试以前的问题。也不允许在问题之间切换。

  1. 分别为您提供了一个 N 大小的产品编号数组和另一个 N 大小的产品成本数组。可以有多个具有不同成本的相同产品编号的产品。您需要找到我们可以通过选择每个产品编号的一个产品来获得的最大成本。因此您不能选择相同产品编号的多个产品。
  2. 给你一个 NxM 矩阵。单元格包含*(星号)或.(点)这里,'*' 表示土地,'.'指水。您需要找到可以完全包围一个岛的所有最小面积矩形中的最大值。相邻的 * 形成一个岛(上、左、右、下)。最小面积矩形可以在其中包含水,但应包含一个完全在其内部的岛。
  3. 您已经获得了 N 个字符串,您需要创建一个最小长度的字符串,使这 N 个字符串成为该输出字符串的子字符串。额外条件:让我们考虑给定列表中的 2 个字符串A 和 B,如果 A 在列表中的 B 之前,那么在输出字符串中,B 应该在 A 的开始之后开始。

第 2 轮:技术面试 1

这一轮从一个标准的“告诉我关于你自己”的问题开始。

接下来,他问了我关于我之前实习的问题。讨论持续了 5 到 10 分钟。

在这一轮中,我只被要求编写伪代码。

  1. https://www.geeksforgeeks.org/minimum-number-of-jumps-to-reach-end-of-a-given-array/
  2. https://www.geeksforgeeks.org/design-a-stack-that-supports-getmin-in-o1-time-and-o1-extra-space/
  3. 第三个问题与网格中的 DFS/BFS 有关。

我能够为所有问题提供最佳解决方案。

面向对象:

  1. 关于多态性的问题——它的类型、多态性的实现方式等。
  2. 关于继承的几个问题。

数据库管理系统:

  1. 解释标准化的必要性。
  2. 使用大学数据库示例解释 1NF、2NF、3NF。
  3. 编写查询从表中找到每个部门的最高工资(基本上使用group by子句)
  4. 与索引相关的问题(内部结构——例如 Btree、B+Tree)
  5. 聚集索引和非聚集索引之间的区别。

操作系统:

  1. 虚拟内存及其实现方式。
  2. 我得到了一个场景,并被问到虚拟内存在该场景中将如何工作。

从 OOP、DBMS 和操作系统中又问了几个问题,我记不太清了。最后,他问我是否有任何问题。我问他实习生使用的技术和实习生的工作描述。

第三轮:技术面试 2

他首先向我询问了我最近的项目——简要描述、技术堆栈、面临的挑战等。

Kadane 的算法——我被要求对算法进行编码,并在一个示例中对其进行试运行。

后续问题 - https://www.geeksforgeeks.org/k-th-largest-sum-contiguous-subarray/

我被问到时间复杂度、空间复杂度以及一些与可能的配对数量相关的基本数学问题等。尽管我在提到确切的时间复杂度时确实在这里和那里犯了一些错误,但我可以提供解决问题的最佳方法.但面试官很乐于助人,并在必要时提供提示。

第二个问题是一个难题,不必编写任何代码。确保你很好地理解了这个问题。我误解了这个问题并最终给出了错误的解决方案。面试官后来又向我解释了这个问题。

面向对象:

  1. 继承和虚拟关键字。
  2. vptr 和 vtable。
  3. 没有任何数据成员的对象的大小。
  4. 静态关键字
  5. 我也被要求调试 OOPs 代码片段。
  6. 与多态性有关的问题。
  7. OOP 的基本问题,例如什么是类,什么是对象,OOP 的主要概念是什么。

OS:这次问了一些与 fork 系统调用和虚拟内存相关的非常好的和深入的问题。

还有一些关于核心主题的问题,我不记得了。

在这一轮中没有向我询问 DBMS 问题,尽管有一些学生被问到与 DBMS 相关的问题。

最后,他问我是否有任何问题。这一次,我向他询问了我去年实习生完成的几个项目,以及这些项目是如何在实习生之间分配的。面试官很亲切,给我解释了之前的两个项目。

这一轮结束后,有3名学生收到了录取通知书,我有幸成为其中的一员。