面試題解析 第 49 頁,共 52 頁

瀏覽 OfferCC 面試題解析第 49 頁,查看解題思路、實作細節、追問與公開來源。

後端困難

後端面試:如何設計穩定的游標分頁 API?

從併發寫入下的分頁語意出發,比較 offset 與游標分頁,並推導複合游標、索引、雙向翻頁、快照邊界與故障測試。

查看問題與回答
資料困難

資料工程面試:如何設計 SCD Type 2 維度並保留正確歷史?

用代理鍵、左閉右開有效區間、冪等載入、刪除語義、遲到修正和不變量檢查,設計時點正確的 SCD Type 2 維度。

查看問題與回答
程式題困難

程式設計面試:實作一個有界 SPSC 無鎖環形佇列

在單一生產者、單一消費者限制下實作固定容量環形佇列,說明索引、滿空判斷、記憶體序與邊界測試。

查看問題與回答
系統設計困難

系統設計面試:如何設計即時協同編輯器?

從 CRDT 收斂、文件房間、持久更新日誌和狀態向量出發,設計支援本機即時編輯、離線重連、臨時游標、權限撤銷與可驗證故障恢復的協同編輯系統。

查看問題與回答
後端困難

PostgreSQL 慢查詢面試:如何診斷並最佳化慢 SQL?

從真實負載、執行計畫和基數估算推導複合索引與部分索引,並給出上線驗證、寫入放大和回復檢查,避免只憑直覺加索引。

查看問題與回答
資料困難

資料工程面試:如何設計變更資料擷取(CDC)管線?

從 PostgreSQL WAL、初始快照與來源位置推導無缺口 CDC 管線,並處理至少一次傳遞、刪除、Schema 演進、複寫槽風險、重播與資料對帳。

查看問題與回答
程式題困難

如何實作 Fenwick Tree,並支援動態前綴和與按權重選項?

用低位組裝的單陣列結構實作單點更新、前綴和、區間和與按累計權重選項,分析索引邊界、複雜度與負數限制。

查看問題與回答
系統設計困難

系統設計面試:如何設計集中式日誌系統?

從本機緩衝、持久訊息流、選擇性索引和物件儲存歸檔出發,設計能承受日誌風暴、下游故障、高基數欄位和多租戶雜訊的集中式日誌平台。

查看問題與回答
後端困難

熱門快取過期時,如何避免快取踩踏?

從軟過期、請求合併與分散式租約出發,設計能承受熱門鍵失效、刷新者崩潰、快取故障與延遲寫回的快取讀取路徑。

查看問題與回答
資料困難

資料工程面試:如何診斷並修復 Kafka 熱分割區?

從分割區層級 lag 與 key 分布定位 Kafka 熱分割區,計算積壓成長速度,再依真實順序邊界選擇限流、分割區內並行、新分割 key 與安全遷移方案。

查看問題與回答
程式題困難

如何實作 Skip List,並解釋它為何期望 O(log N)?

用隨機層高建立可插入、刪除與按序查找的跳表,說明期望複雜度、隨機數邊界、重複鍵與記憶體取捨。

查看問題與回答
系統設計困難

系統設計面試:如何設計雲端檔案儲存與多裝置同步服務?

從分片上傳、不可變檔案版本與游標增量同步出發,設計支援斷點續傳、離線編輯、衝突副本、版本還原與安全回收的雲端硬碟服務。

查看問題與回答
後端困難

PostgreSQL 交易隔離如何避免寫入偏斜?

以醫師值班這項跨資料列不變量,推導 Read Committed、Repeatable Read 與 Serializable 的實際行為,並比較序列化重試、明確鎖定及單列條件更新三種修正方式。

查看問題與回答
資料中等

A/B 測試出現樣本比例不符時,如何診斷?

從卡方檢定確認 Sample Ratio Mismatch,再沿分流、執行、日誌處理和分析篩選逐層定位根因,避免用失真的顯著提升做上線決策。

查看問題與回答
程式題困難

如何實作 Vose Alias Method 做 O(1) 加權隨機取樣?

用機率表和別名表把靜態離散分布預處理為常數時間取樣,並處理權重更新、數值精度和分布驗證。

查看問題與回答
系統設計困難

系統設計面試:如何設計分散式鎖服務?

從強一致鎖狀態、租約續期與 fencing token 出發,設計能抵禦程序暫停、網路分割、回應遺失與主節點故障的分散式鎖服務。

查看問題與回答
後端困難

如何設計冪等的建立訂單 API,避免重試產生重複訂單?

從冪等鍵範圍、請求指紋與資料庫唯一限制出發,設計可安全重試的建立訂單 API,並處理並行請求、回應遺失、鍵過期與下游副作用。

查看問題與回答
資料中等

SQL 面試題:如何查詢每個品類營收前三名的商品?

先把訂單明細彙總到商品粒度,再用 DENSE_RANK 處理並列營收並篩選每個品類的前三個級距,說清楚視窗函式、執行順序、邊界與驗證。

查看問題與回答
程式題困難

如何實作 Count-Min Sketch 估算資料流中的頻率?

用二維計數器與多組雜湊在固定記憶體中估算任意鍵的出現次數,並說明誤差上界、合併與重設。

查看問題與回答
系統設計困難

系統設計面試:如何設計大規模網頁爬蟲?

從抓取預算推導依主機分片的 URL frontier,處理 robots.txt、禮貌排程、去重、重新爬取與租約復原,並以容量計算和故障不變量驗證設計。

查看問題與回答
資料中等

如何監控正式環境中的機器學習模型?

以叫車 ETA 迴歸模型為例,建立從服務健康、資料品質、分布漂移到延遲標籤品質的分層監控,並將每類訊號映射到可執行的告警、回復版本與重新訓練決策。

查看問題與回答
程式題中等

如何用 HyperLogLog 近似估算海量資料的去重數量?

用固定記憶體的 HyperLogLog 估算串流資料基數,掌握暫存器更新、誤差修正和分散式合併邊界。

查看問題與回答
系統設計困難

如何設計一個 Feature Flag 系統?

透過分離管理控制平面與行程內評估路徑,設計低延遲功能旗標平台,並明確定義百分比分組、陳舊資料、治理和故障復原規則。

查看問題與回答
資料困難

如何離線與線上評估推薦系統?

從時間點一致的歷史日誌、排序與非準確率指標、曝光偏差和隨機線上實驗建立上線決策,並系統排查離線勝出、線上失敗的原因。

查看問題與回答