Google 的面試到底有多難? 單說 OA,就已經勸退一波人了。 但其實,只要掌握出題套路 + 把握好時間分配,OA 完全是可以逆襲的第一步。 今天就借助 Programhelp 學員的真實經歷,帶你復盤一次完整的 Google OA 流程+真題解析,提前踩點不吃虧!
Google OA 基本情況速覽(適用於校招 / 實習)
不誇張地說,Google OA 是少數“能考出 LeetCode 原題還卡你思維的那種”。 出題方向相對穩定,但會變體繞彎,很考臨場反應。
| 內容 | 說明 |
|---|---|
| 平臺 | CodeSignal(大多為應屆生崗位)或 Karat(偏向在職/高年級) |
| 總時長 | 一般為 70 ~ 90 分鐘 |
| 題量結構 | – 編碼 2~3 道 – 加上部分簡答題或邏輯題(偶爾) |
| 語言支援 | Python / Java / C++ 等(建議用最熟練的) |
| 難度分佈 | 通常是 1 Medium + 1 Hard,也有遇到 2 Hard 情況,運氣成分不少 |
| 是否錄屏監控 | CodeSignal 版本通常會全程錄屏 + 拍照認證 |
真題還原 + 解題思路(近兩年高頻題)
題目 1:Fill 2D Array Google OA 2025
Fill 2D Array Google OA
Given a N x N matrix. Fill the integers from 1 to n*n to this matrix that makes the sum of each row, each column and the two diagonals equal.
Example 1:
Input: n = 2
Output: null
Explanation: We need to fill [1, 2, 3, 4] into a 2×2 matrix, which is not possible so return null.
Example 2:
Input: n = 3
Output:
[[8, 3, 4],
[1, 5, 9],
[6, 7, 2]]
Explanation: We need to fill [1, 2, 3, …, 9] into a 3×3 matrix. This is one way to do it
Each row [8, 3, 4] [1, 5, 9] [6, 7, 2] sum is 15.
Each column [8, 1, 6] [3, 5, 7] [4, 9, 2] sum is 15.
The two diagonals [8, 5, 2] [4, 5, 6] sum is 15.
int[][] fillMatrix(int n) {}
题目 2:Largest Subarray Google OA 2025
Largest Subarray Google OA
Given an integer array nums, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum.
A subarray is a contiguous part of an array.
Example 1:
Input: nums = [-2,1,-3,4,-1,2,1,-5,4]
Output: 6
Explanation: [4,-1,2,1] has the largest sum = 6.
Example 2:
Input: nums = [1]
Output: 1
Example 3:
Input: nums = [5,4,-1,7,8]
Output: 23
题目 3:Maximum Area Serving Cake Google OA 2025
Maximum Area Serving Cake Google OA
Given an array containing the radii of circular cakes and the number of guests, determine the largest piece that can be cut from the cakes such that everyguest gets a piece of the cake with the same area. It is not possible that a single piece has some part of one cake and some part of another cake and each guest isserved only one piece of cake.
Example 1:
Input: radii = [1, 1, 1, 2, 2, 3], numberOfGuests = 6.
Output: 7.0686
Explanation:
Reason being you can take the area of the cake with a radius of 3, and divide by 4. (Area 28.743 / 4 = 7.0686)
Use a similarly sized piece from the remaining cakes of radius 2 because total area of cakes with radius 2 are > 7.0686
Example 2:
Input: radii = [4, 3, 3], numberOfGuests = 3
Output: 28.2743
Example 3:
Input: radii = [6, 7], numberOfGuests = 12
Output: 21.9911
题目 4:Compare Strings Google OA 2025
Compare Strings Google OA
One string is strictly smaller than another when the frequency of occurrence of the smallest character in the string is less than the frequency ofoccurrence of the smallest character in the comparison string.
For example, string “abcd” is smaller than string “aaa” because the smallest character (inlexicographical order) in “abcd” is ‘a’, with a frequency of 1, and the smallest character in“aaa” is also ‘a’, but with a frequency of 3.
In another example, string “a” is smaller than string “bb” because the smallest character in“a” is ‘a’ with a frequency of 1, and the smallest character in “bb” is‘b’ with a frequency of 2.
Write a function that, given string A (which contains M strings delimited by ‘,’) and string B (which contains N stringsdelimited by ‘,’), returns an array C of N integers. For 0 <= J < N, values of C[J] specify the number of strings in A which arestrictly smaller than the comparison Jth string in B (starting from 0).
For example, given strings A and B such that:
Input:
A = “abcd,aabc,bd”
B = “aaa,aa”
Output:
[3, 2]
Explanation:
the function should return [3, 2], because:
All the strings in A are strictly smaller than “aaa” on the basis of the given comparison criteria.
Strings “abcd” and “bd” are strictly smaller than “aa”.
Constraints:
1 <= N, M <= 10000
1 <= length of any string contained by A or B <= 10
All the input strings comprise only lowercase english alphabet letters (a – z)
Google 投遞建議|什麼時候投 & 怎麼投更有效?
不少同學會問:「Google 要不要早點投? “、”內推有用嗎? “、”投完多久出 OA? “這邊給大家總結一下 👇
建議一:儘早準備,提前投遞
Google 秋招每年 7~8 月就陸續開放申請入口,建議儘早準備好簡歷,7 月中旬就可以開始關注。 提早投遞意味著能早點收到 OA,不容易被系統 backlog 或“批量拒”。
建議二:盡量內推,命中率更高
內推會優先處理,而且不影響後續正常流程,成功率普遍比官網自投更高一些。 如果你沒內推人,可以找校友、GitHub 聯繫工程師。
建議三:崗位匹配要精準
如果你是應屆生,建議優先投遞 「University Grad」 / “SWE Intern” 類崗位,系統更容易打標籤識別。 在投遞前,把簡歷中的關鍵詞(專案名稱、技術棧)和崗位 JD 盡量對齊,提升匹配度。
小提示:投完簡歷后,OA 通常 1~3 周內發出,耐心等待 HR 郵件。 如果超過 3 周沒動靜,建議適當 follow-up 或換路數二投。
Programhelp 助你高效衝刺 Google OA
作為面試輔助領域的老朋友,我們已成功助攻數十位同學通過 Google OA,並拿下 Google / Meta / Amazon 等科技巨頭 offer。 我們提供:
最新 Google 高頻 OA 真題訓練 + 分題講解
Coding 類比 + Karat 視頻面試演練
高分策略拆解(如何拿滿 score / 優化代碼結構)
OA 远程助攻服务(题意分析 / 答题思路指引)
如果你也正在备战 Google OA,欢迎私信我们领取题库样本 & 一对一辅导排期!