📜  DE Shaw实习面试经历(On Campus 2018-2019)

📅  最后修改于: 2021-11-17 09:52:05             🧑  作者: Mango

第1轮:

这是一轮编码。在线平台(Hackerrank)上有两个编码问题。测试时间为 50 分钟。

第一个问题

给你字符串带有开始和结束标签的 HTML 标签,我们必须找到总标签的最大数量,我们将相同的标签组合在一起并计算它们。这里的标签被定义为一个开始和一个结束标签,其中开始和结束标签的顺序无关紧要。开始标记定义为写在尖括号 () 内的文本,关闭标记定义为写在尖括号内的文本,后跟 ()

样本输入

样本输出:3

解释 :

总共 3 个头部标签和 2 个身体标签,所以答案是 3,即最多 2、3。

这里要考虑的一点是,标签要么是先开后闭(不一定是连续的),要么是先开后是开标签。

第二个问题

在前 n 个自然数的第 i 个排列中找到第 k 个索引处的数字。输入按 n、i、k 的顺序给出。

样本输入: 3 2 2

样本输出: 3

共有 22 名学生被选中参加下一轮面试。

第二轮:

这是技术回合,持续约 1 小时 45 分钟,他们问为什么您在在线编码回合中的第二个问题不起作用。我告诉他们我的代码中有一个小缺陷。

第 2 轮中的其他问题是:

  1. 给你一个 n*m 网格,其中一些单元格是空的,其中一些着火了,而其中一些有墙壁。有一个人站在一个给定的牢房上,最右边的底部牢房有一个出口。如果传播方向上的单元格是墙壁,则火在网格中每秒向四个方向蔓延,否则,它会在该单元格处停止。人每秒可以在四个方向的空旷空间中旅行。你必须找到这个人是否可以安全地逃离电网。
  2.  使双向链表的内存效率更高。基本上,您必须将每个节点的指针数量从 2 减少到 1,并且仍然能够在两个方向上遍历。
  3. 关于多态性(运行时和编译时)、重载(函数和运算符)的解释。然后是关于虚拟函数、VPTR、VTABLE 的讨论。
  4.  指针和引用的区别。为什么在所有传统数据结构(如链表和树)中都使用指针而不是引用?
  5. 鉴于不平衡的括号字符串。您必须删除最小数量的括号以使其平衡并在删除最小数量的括号后打印所有平衡的括号。

第 3 轮:

这也是技术回合。它持续约1.5小时。

本轮提出的问题包括:

  1. N/4 多数元素问题。他们给了我一个真实的情况,解决方案归结为找到给定数组中出现次数超过 N/4 次的所有元素。
  2. Hashing, Collision, Collision Resolving Techniques, Fast Hashing 在分离链的情况下。
  3. Web 浏览器设计问题。您将设计 Web 浏览器,并且想要实现后退和前进选项卡的功能。你将如何实施?
  4. 最小化现金流问题。
  5. C++ 的一些理论概念,如悬空指针、空指针、内存不足错误(不要将它与数组越界异常混淆)、什么是 Segmentation Fault 中的核心转储?、进程和程序之间有什么区别、如何处理程序变成了一个过程?。
  6. DBMS 的基本概念,如键、规范化等。
  7. SQL的一些简单查询的问题,包括连接表的概念,差异,不同查询的交集等。

第 4 轮

这是人力资源回合,她问了我这样的问题:

  1. 说说你自己。
  2. 你第一年结束时的 GPA 是多少?
  3. 你多久看一次报纸?
  4. 你对德肖了解多少?
  5. 您在 GK 上以 1-5 的等级给自己打几分?
  6. 她给了我一个谜。这被正式定义为“给你 8 个外观相同的球。其中一个比其余的 7 个重(所有其他的重量完全相同)。为您提供了一个简单的机械天平,您只能使用 2 次。找到更重的球”。
  7. 你擅长数字吗?她给了我一个简单的问题,就是找到 133^9 的最后一位数字。
  8. 如果有机会在那里实习,你愿意转移到海得拉巴办公室吗?

结果:选中