Skip to content

美国Google公司NG软件工程师面试经验

发表于 2026-05-08
更新于 2026-05-08
阅读量 加载中...

基本信息

  • 面试日期:近期
  • 面试岗位:Software Development Engineer
  • 岗位级别:New Grad
  • 学历背景:硕士
  • 工作类型:全职
  • 投递方式:内推
  • 面试形式:技术电面

面试详情

面试整体体验

本轮面试整体沟通比较顺利,面试官态度友好。两道题之前都没有做过,因此过程中花了较多时间讲解思路和举例说明,但两题最终都给出了最优解。过程中有一些明显的书写错误,在面试官提醒后快速完成修正。

第一题

leetcode 289。

follow up:

  • in-place modify。

题目本身难度不大,完整写完代码、dry run、follow up 和测试后,正好还剩大约5分钟进行反问。

第二题

给定一个有序数组,每个索引代表不同的人,每个索引的元素是一个元组:

  • (timestamp, "进门" 或 "出门")

要求返回一个数组,每个索引代表不同的人,每个元素表示这个人在什么时间进门或出门。

当多个人在同一时间进出门时,规则如下:

  • 如果前一刻是有人进门,进门的人优先;
  • 如果前一刻有人出门,出门的人优先;
  • 如果前一刻没人,出门的人优先;
  • 如果同时有人进门或出门,索引数字小的人先结算。

思路:

  • 使用两个队列,分别管理进门和出门;
  • 使用一个时间变量和一个prev_state变量记录前一刻的进出状态。

follow up:

  • 朴素解法:时间从最小 timestamp 一直加到最大 timestamp;
  • 优化方案:根据输入数组中的 timestamp 跳跃式推进时间,时间复杂度优化到O(n)

代码完成并回答完 follow up 后,没有来得及进行 dry run 和测试,但在讲解思路时结合例子说明得比较详细,并确认没有遗漏 edge case。最终反问时间被占用了大约2分钟。

面试结果反馈

  • 最终结果:未知

引用来源

Google SDE NG VO R2海外面经

来源:一亩三分地

作者:匿名用户-FSHIM

发布时间:2026-05-05