← 返回博客列表 BlackRock OA 全解析:题型分类与高频真题拆解
BlackRock

BlackRock OA 全解析:题型分类与高频真题拆解

2026-06-09

BlackRock 作为全球最大的资产管理公司,技术岗(尤其是 Aladdin 平台相关团队)的 OA 既考算法基础,也考工程与数据能力。它的 Coding Assessment 通常通过 HackerRank 进行,题型组合相对固定。本文把这套 OA 拆成四大类,逐一给出真题角度的解法。

BlackRock OA 概览

维度 详情
平台 HackerRank(部分岗位用 CodeSignal)
时长 60–90 分钟
题量 3–5 题(编码 + SQL 混合)
难度 LeetCode Easy–Medium 为主
考察重点 数组/字符串、图论、DP、SQL 查询

题型一:数组与字符串处理

最基础的一类,常见为「子数组求和」「字符频次统计」。一道典型题:给定数组,求和恰好等于 target 的连续子数组个数。

Python 解法(前缀和 + 哈希)

def subarray_sum_count(nums, target):
    count = 0
    prefix = 0
    seen = {0: 1}  # 前缀和 -> 出现次数
    for x in nums:
        prefix += x
        count += seen.get(prefix - target, 0)
        seen[prefix] = seen.get(prefix, 0) + 1
    return count

时间复杂度:O(n) 空间复杂度:O(n)

题型二:图论 / 最短路径

资产网络、依赖关系常被包装成图题。典型题:给定 N 个节点和带权边,求从源点到所有节点的最短距离。

Python 解法(Dijkstra + 堆)

import heapq
from collections import defaultdict

def shortest_paths(n, edges, src):
    graph = defaultdict(list)
    for u, v, w in edges:
        graph[u].append((v, w))
    dist = [float('inf')] * n
    dist[src] = 0
    pq = [(0, src)]
    while pq:
        d, u = heapq.heappop(pq)
        if d > dist[u]:
            continue
        for v, w in graph[u]:
            if d + w < dist[v]:
                dist[v] = d + w
                heapq.heappush(pq, (dist[v], v))
    return dist

时间复杂度:O((V + E) log V)

题型三:动态规划

BlackRock 的 DP 题偏「投资/收益」场景,例如「最大不相邻子序列和」(隐喻不能连续两期都投同一资产)。

Python 解法

def max_non_adjacent_sum(nums):
    include, exclude = 0, 0  # include: 选当前; exclude: 不选当前
    for x in nums:
        include, exclude = exclude + x, max(include, exclude)
    return max(include, exclude)

时间复杂度:O(n) 空间复杂度:O(1)

题型四:SQL 查询

金融数据岗几乎必考。典型题:给定 transactions 表,找出每个 client 当月交易额最高的那一笔。

SQL 解法(窗口函数)

SELECT client_id, txn_id, amount, txn_date
FROM (
    SELECT client_id, txn_id, amount, txn_date,
           ROW_NUMBER() OVER (
               PARTITION BY client_id
               ORDER BY amount DESC
           ) AS rn
    FROM transactions
    WHERE txn_date >= DATE_TRUNC('month', CURRENT_DATE)
) t
WHERE rn = 1;

窗口函数 ROW_NUMBER() 是这类「分组取 Top-1」题的标准武器,比自连接更清晰高效。

备考策略

题型 推荐 LeetCode 重点
数组/字符串 1, 560, 76 前缀和、双指针、滑动窗口
图论 743, 207, 1631 Dijkstra、拓扑排序
DP 198, 322, 300 状态定义、滚动数组
SQL 窗口函数、聚合、JOIN ROW_NUMBER、GROUP BY、HAVING

BlackRock OA 的整体难度不极端,但题量大、时间紧,SQL 与编码混考很容易顾此失彼。建议按题型轮转刷题,把 SQL 的窗口函数练到肌肉记忆。


FAQ

BlackRock OA 难度如何?和 LeetCode 比是什么水平? 整体在 Easy 到 Medium 之间,单题不难,但题量大、时间紧,加上 SQL 混考,对节奏控制要求高。

BlackRock OA 用什么平台?时长多久? 多数岗位走 HackerRank,部分用 CodeSignal,时长 60–90 分钟,含 3–5 题。

BlackRock OA 一定会考 SQL 吗? 数据/金融分析方向几乎必考;纯后端/平台岗以编码题为主,但掌握窗口函数有备无患。

OA 之后的流程是什么? 通过后通常进入技术电面与 superday(多轮 VO),含编码、系统/项目讨论与 Behavioral,整体周期约 3–5 周。

OA 时间不够、SQL 不熟怎么办? 我们提供 BlackRock OA辅助 与 OA代面 支持:针对四大题型做专项拆解与限时演练,帮你在紧张的时间窗内稳定拿分。


正在准备 BlackRock 的 OA?

BlackRock OA 的难点不在单题,而在「题量 + SQL 混考」的节奏。我们的导师可提供四类题型的高频题拆解、SQL 窗口函数专项与限时模拟。需要系统规划,欢迎交流,立刻联系微信 Coding0201获取真题与备考资料


联系方式

Email: [email protected] Telegram: @OAVOProxy