← 返回部落格列表 2025 Bloomberg VO 高頻題彙總|一畝三分地最新 60+ 帖子統計與題型分布
Bloomberg

2025 Bloomberg VO 高頻題彙總|一畝三分地最新 60+ 帖子統計與題型分布

2026-05-18

資料來源:oavoservice 團隊按月抓取一畝三分地 Bloomberg 板塊 + offer 群面經分享,統計視窗 2024-10 至 2026-05,共納入 60+ 篇 VO 複盤。本文不重複「3 輪通關手冊」已有內容,而是回答一個具體問題——最近半年到一年,BBG VO 真題裡哪些反覆出現?


一、統計口徑說明

維度 數值
資料時間視窗 2024-10 ~ 2026-05
帖子樣本 60+ 篇 VO 複盤
涵蓋崗位 SDE Intern、NG、L4-L5 lateral
涵蓋城市 NYC(80%)、倫敦(10%)、上海(8%)、東京(2%)
統計單位 「題目主題」為單位,同題不同包裝合併

二、Top 10 高頻題排行表

排名 題目 出現次數 難度 出現輪次
1 Flatten Multilevel Linked List (LC 430) 18 Med R1
2 LRU Cache (LC 146) 15 Med R1
3 Word Break I / II (LC 139/140) 12 Med / Hard R2
4 字典樹 + Prefix 題(變體) 10 Med R2
5 Top K Frequent Elements / Words (LC 347/692) 9 Med R1
6 Calendar Busy / Merge Intervals (LC 56/57) 8 Med R2
7 CSV Folder Sum / 巢狀資料聚合 7 Med R2
8 Word Search Grid (LC 79) 6 Med R2
9 Bus Tracker / OOD 設計 5 Med R3
10 Wildcard Match (LC 44) 5 Hard R2

觀察:前 4 名共佔 55% 出現量,是「必刷」層;6-10 名是「風險護欄」層,出現率雖不到 15%,但只要不熟就直接掛。


三、Top 1:扁平化多層雙向鏈結串列

題面(變體):給定一個有 child 指標的 doubly linked list,扁平化成單層 DLL,保持 DFS 順序。

class Node:
    def __init__(self, val, prev=None, next=None, child=None):
        self.val = val
        self.prev = prev
        self.next = next
        self.child = child

def flatten(head):
    if not head:
        return None
    stack = [head]
    prev = None
    while stack:
        cur = stack.pop()
        if prev:
            prev.next = cur
            cur.prev = prev
        if cur.next:
            stack.append(cur.next)
        if cur.child:
            stack.append(cur.child)
            cur.child = None
        prev = cur
    return head

時間複雜度:O(n) 空間:O(d),d 為最大 child 巢狀深度

BBG 面試官追問:1) 不讓用 stack 怎麼做?→ 遞迴 + tail 指標;2) 是否可能成環?→ 加 visited set 偵測。


四、Top 2:LRU Cache

題面:實作 LRU,get / put 都 O(1)。BBG 這道題考了 6 年,追問角度變化最大

class LRUCache:
    def __init__(self, capacity):
        self.cap = capacity
        self.cache = {}
        self.head = self.tail = None

    class _Node:
        __slots__ = ("key", "val", "prev", "next")
        def __init__(self, k, v):
            self.key, self.val = k, v
            self.prev = self.next = None

    def _add_front(self, node):
        node.prev = None
        node.next = self.head
        if self.head:
            self.head.prev = node
        self.head = node
        if not self.tail:
            self.tail = node

    def _remove(self, node):
        if node.prev:
            node.prev.next = node.next
        else:
            self.head = node.next
        if node.next:
            node.next.prev = node.prev
        else:
            self.tail = node.prev

    def get(self, key):
        if key not in self.cache:
            return -1
        node = self.cache[key]
        self._remove(node)
        self._add_front(node)
        return node.val

    def put(self, key, value):
        if key in self.cache:
            node = self.cache[key]
            node.val = value
            self._remove(node)
            self._add_front(node)
            return
        if len(self.cache) >= self.cap:
            evict = self.tail
            self._remove(evict)
            del self.cache[evict.key]
        node = self._Node(key, value)
        self.cache[key] = node
        self._add_front(node)

時間複雜度:O(1) per op 空間:O(capacity)

BBG 2026 新追問:thread-safe 怎麼做?→ threading.RLock 或分桶鎖。


五、Top 3:Word Break II(實戰版)

題面:給定字串 s 和詞典 wordDict,返回所有可拼接成 s 的合法分詞(按任意順序)。

from functools import lru_cache

def word_break(s, word_dict):
    words = set(word_dict)

    @lru_cache(maxsize=None)
    def helper(start):
        if start == len(s):
            return [""]
        out = []
        for end in range(start + 1, len(s) + 1):
            piece = s[start:end]
            if piece in words:
                for tail in helper(end):
                    out.append(piece if not tail else piece + " " + tail)
        return out

    return helper(0)

時間複雜度:最壞 O(2^n),平均 O(n²·avg_len) 空間:O(n²)

BBG 追問:1) 如果輸出是無限字典,怎麼剪枝?→ 字典樹 + DFS;2) 如果只問「能否拼」,怎麼從 O(2^n) 降到 O(n²)?→ 一維 DP。


六、行為面 5 大高頻問題

  1. Why Bloomberg?(80% 必問)
  2. 跟同事 / PM 立場分歧時怎麼處理?
  3. 你做過最 proud 的專案,impact 怎麼量化
  4. 你被批評過的一次,learning 是什麼?
  5. 你怎麼 keep up with 金融 / 科技變化?(BBG 特色)

BBG 文化關鍵字Customer ObsessionTinker MentalityCuriosity。每個準備 1 個具體故事 + 數字。


七、一畝三分地用戶最容易踩的 5 個坑

  1. 只刷 LC 不寫 OOD:BBG R3 必出 OOD,純 LC 選手在第三輪容易「答得很碎」
  2. 過度優化導致超時:BBG 60min 1-2 題,先正確再優化比直接給最優解更穩
  3. 忽視邊界:空 list / 自指標 child 等邊界一定要主動列出
  4. 只準備英文回答 BQ:BBG NYC 面試官多元化,口音要適應——錄音模擬自己聽
  5. 忘了 follow-up clarification:題幹模糊一定要先問,BBG 面試官非常看重「asking the right question」

八、常見問題 FAQ

Q1:BBG VO 難度和 Meta / Google 比怎麼樣?

A:演算法難度 BBG ≈ Meta E4 ≈ Google L4,但 OOD 權重比 Meta / Google 高。整體 onsite pass rate ~30%。

Q2:一畝三分地 BBG 題更新有多快?

A:週更——每週大約 3-5 篇新複盤。我們抓取頻率是每天 1 次,2026 年後 BBG 題庫穩定在 ~20 道核心題輪換。

Q3:BBG 做 OA 嗎?

A:NG 一般沒有 OA,直接進 phone screen;intern 部分崗位有 HackerRank 簡短測試(30min 2 題)。

Q4:BBG 給 H1B sponsor 嗎?

A:給,NYC office 是大頭,倫敦 / 東京視團隊。BBG 對 H1B 友好度高於 Citadel / Two Sigma。

Q5:onsite 表現好卻被拒,怎麼辦?

A:BBG 會發 detailed feedback(少見),可主動 ping recruiter 索要。被拒 6 個月後可重投。

Q6:BBG 面試 prep 多久合適?

A:在職跳槽 6–8 週;NG 全力準備 4 週。重點投在前 4 題(佔 55% 頻次)+ OOD。


九、需要 Bloomberg VO 輔助?

Bloomberg 面試演算法 + OOD + 行為面三輪考察的難度梯度獨特——既要 LC 中等熟練度,又要快速翻譯需求成 class 設計。如果你正在準備:

我們提供:BBG 當週高頻題、OOD 模擬(Bus Tracker / Calendar / Trade Match)、行為面 STAR 故事打磨、面試當天即時輔助。


聯絡方式

Email: [email protected]
Telegram: @OAVOProxy
微信: Coding0201


最後更新:2026-05-18 | 作者:oavoservice 面試組