📜  高盛面试经历 |校外(2020 年 9 月)

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

高盛面试经历 |校外(2020 年 9 月)

一位招聘人员通过领英联系了我。那时我刚开始在一家 XYZ 公司担任软件工程师。我已经转发了我的简历,2个月后我接到了HR的电话,要求进行在线面试。

编码轮: HackerRank 上的 2 个编码问题将在 2 小时内解决。这两个问题都非常简单,我能够在很短的时间内完全解决这两个问题。

  1. 运行长度编码
  2. 穿过街道所需的最低初始能量

一周后,我接到了 HR 的电话,要求安排一次 Coderpad 回合

CoderPad 回合(1 小时):在这一回合中,面试官将与您通话,您必须在面试官也可以看到的 coderpad(在线代码编辑器)中编写代码。面试官将在 coderpad 上输入问题,您必须编写代码,它将在多个案例中进行测试。问了两个问题,我都解决了。

  1. 给定一个数组 score [][] = {“jerry”,”65”},{“bob”,”91”}, {“jerry”,”23”}, {“Eric”,”83”}} 查找平均分最高的学生
  2. 捕获雨水

第一轮(Zoom Interview-1 hours):两位面试官问了3个问题。

  1. 这是一个临时类型的问题。他们只询问我的思路,不需要代码。给定一个数据包流,在一秒钟内您只能处理 10 个数据包。但一秒钟内可能有超过 10 个数据包到达。建议一个适当的 DS/算法来管理这种情况。好吧,我不确定解决方案,我建议使用队列和两种基于指针的方法。但他似乎不太满意。他似乎更关心其他一些方法。然后他跳到下一个问题。
  2. 总和大于给定值的最小子数组。我能够解决这个问题。这是他们采访中经常被问到的一个著名问题。我给出了蛮力和优化的方法并编写了代码。
  3. https://leetcode.com/problems/bus-routes/
    最初,我提出了一种错误的连接组件方法,然后在他告诉我一个示例测试用例后,我提出了一种基于 DFS 的方法。他没有要求编码,因为时间差不多了,看起来很满意。

第 2 轮(Zoom Interview-1 小时):两位面试官问了 3 个问题。同一天再次。

  1. 使用 rand2() 实现 rand3()。老实说,我从未见过这种类型的问题。我的问题有点不同。给定3个功能。

def rand2(){
      return 1 with 0.5 probability
      otherwise return  0
}
def rand3(){
     return 1 with 0.33 probability
     otherwise return  0
}
def rand4(){
     return 1 with 0.25 probability
     otherwise return  0
}
  1. 您需要将 rand2() 转换为 rand3() 并将 rand2() 转换为 rand4()。我认为这是一些位操作问题,并使用按位告诉答案并将 rand2() 转换为 rand4()。他说好的,然后说使用类似的方法将 rand2() 转换为 rand3()。我有几分钟没能接过来,然后他跳到下一个问题。
  2. 从给定的源和目的地找到最小路径,并找到所有这些路径。我们被允许在所有 8 个方向上移动,将一个单元格移动到相邻的另一个单元格的成本是 1。我告诉了一种基于 BFS 的方法来获取最小路径,然后再次应用 BFS 来获取所有此类路径。他没有问代码,似乎很满意。
  3. https://leetcode.com/problems/last-stone-weight-ii/
    好吧,我知道它的简单版本,但不知道这个问题的中等版本。我使用优先队列方法解决了,但他做了一个这个逻辑失败的测试用例。我正在考虑其他一些方法,但无法弄清楚这是一个 DP 问题。在看到我挣扎之后,他结束了采访。

我想这就是我。我在采访中注意到的几件事。首先,他们会问很多以前问过的问题,所以要做好准备。其次,他们没有问一个非常棘手的问题,GFG 和 Leetcode 就足够了。第三,对概率和谜题有很好的把握。第四,尽量与面试官互动,即使你没有想到方法,也可以将你的想法传达给面试官。

希望这会有所帮助,一切顺利……