面试面经 · Google
【Google】【Software Engineer】【New Grad】面经(算法+系统设计+Googleyness)
【Google】【Software Engineer】【New Grad】
基本信息
| 项目 | 内容 |
|---|---|
| 公司 | |
| 岗位 | Software Engineer |
| 轮次 | 全流程 |
| 场景 | New Grad / Intern |
| 面型体感 | 2轮Coding + System Design(L4+) + Googleyness |
| 面试官风格 | 注重最优解+沟通+成长潜力 |
面试流程
Round 1: Coding Interview(45分钟)
- 1-2道算法题,Medium难度
- 考察:问题解决方法、代码正确性、沟通
Round 2: Coding Interview(45分钟)
- 1-2道算法题,Medium-Hard难度
- 考察:同上,难度略高
Round 3: System Design(L4+)
- 设计一个可扩展的系统
- 考察:架构思维、权衡取舍
Round 4: Googleyness
- 行为面试,文化匹配
- 考察:好奇心、协作、成长心态
高频算法题型分布
| 题型 | 占比 | 难度 |
|---|---|---|
| Arrays & Two Pointers | 18% | Med/Hard |
| Trees & Binary Search | 16% | Med/Hard |
| Dynamic Programming | 15% | Hard |
| Graphs (BFS/DFS) | 14% | Med/Hard |
| Strings | 12% | Medium |
| Heaps & Priority Queues | 9% | Medium |
| Backtracking | 7% | Hard |
| Linked Lists | 5% | Easy/Med |
高频题目(2022-2025验证)
- Two Sum (#1)
- 3Sum (#15)
- Trapping Rain Water (#42)
- Minimum Window Substring (#76)
- Validate BST (#98)
- Lowest Common Ancestor (#236)
- Serialize and Deserialize Binary Tree (#297)
- Edit Distance (#72)
- Coin Change (#322)
- Number of Islands (#200)
- Course Schedule (#207)
- Merge K Sorted Lists (#23)
- Find Median from Data Stream (#295)
Google 面试哲学
- 清晰沟通:先问清楚问题,解释思路,讨论权衡
- 最优解:不仅要对,还要最优,讨论时间和空间复杂度
- 测试意识:主动测试边界情况,自己发现bug
- 接受提示:面试官给hint要立刻理解并应用
- 追问应对:解完后准备回答"能否更优?"
准备建议
- 刷 150-250 题,深度理解而非数量堆砌
- 重点掌握 Arrays + Trees + DP + Graphs(占63%)
- 练习边写代码边讲解思路
- 准备 behavioral questions,体现好奇心和学习能力