📌  相关文章
📜  2020 年 Google 软件工程师面试经验

📅  最后修改于: 2021-11-18 02:47:01             🧑  作者: Mango

第 1 轮(筛选技术面试):

  1. 给定一个数组和一个矩阵。您必须查找矩阵中是否存在数组。您可以从任何一点开始,朝 4 个方向前进。如果数组存在,则返回索引的开始和结束对,否则返回 false。

第二轮(技术面试第一轮):

  1. 给定一个由 0 和 1 组成的矩阵,找到从开始到结束的最短路径(都给定)。您可以向 4 个方向移动,并且只能通过 0s。

第三轮(技术面试第二轮):

  1. 创建寻宝游戏并找到存在于 n 个房间之一中的宝藏。你有 r 把钥匙(从一个房间移动到另一个房间的钥匙,但你不知道哪把钥匙属于哪一对)。起点 – 房间 1。

第 4 轮(技术面试第 3 轮):

  1. 有 n 个作业,您必须在一台机器上安排这些作业。给定作业开始时间和持续时间。安排作业是最好的最佳方式。
  2. 继续上面的问题,有 k 台机器。以最佳方式安排作业。

第5轮(技术面试第4轮):

  1. 给定一个城市,你有道路、建筑物、公园等,给定尺寸,城市的某些部分是空的(地块可以用来建造建筑物)。你的任务是找出有多少种方法可以建造给定尺寸(矩形)的建筑物。

第 6 轮(Googlyness – 行为面试):

  1. 告诉我一些你的事吧。
  2. 什么使自己与他人不同。
  3. 关于我在简历中写的额外活动的讨论很少。
  4. 团队冲突问题。
  5. 你有任何位置限制吗?
  6. 其他行为问题。

提示:-

  1. 在任何面试之前了解自己。
  2. 保持冷静并礼貌地回答。
  3. 要有表现力和深思熟虑。
  4. 更好的沟通是必须的。
  5. 代码应该简单干净。
  6. 多练习。
  7. 记住命名、边缘情况、数据类型、大小、时间复杂度、空间复杂度等约束。
  8. 不要跳到解决方案。顺其自然。