Palantir SWE OA 面经|Decomposition、Graph Query 与 Debug 题型解析

作者:

编辑于:

July 9, 2026

阅读时长:

1 minute read
Palantir OA 面经配图

Palantir SWE OA 的题目更像小型工程任务,不只是刷一道模板题。题面会给一组对象、关系、权限或事件流,要求你把模型拆清楚,再写出可测试的实现。准备时可以先看 Palantir Software Engineer interview guide,再把图遍历、对象差异、日志校验和 Debug 题放到限时环境里练。

第一题:Object Dependency Diff

題目描述

给定两个版本的对象依赖图,每个对象包含 object_idtypeattributesdependencies。要求找出从旧版本到新版本发生变化的对象,并按依赖顺序输出需要重新计算的对象列表。属性变化、依赖增删、依赖对象变化都会触发重新计算。

解題思路

先用 object_id -> object 建表,对比旧图和新图中每个对象的属性哈希与依赖集合。直接变化的对象放进队列,然后在反向依赖图上做 BFS,把所有依赖它们的对象标记为 dirty。输出时要按新图的依赖关系做拓扑排序,让被依赖对象排在前面。环依赖不能让排序死循环,可以在 DFS 中维护 visiting 状态,发现环后把环内对象按 object_id 稳定排序输出,并记录为需要人工检查的 group。複雜度:建表 O(n + e),传播和拓扑排序 O(n + e)。

第二题:Permission Graph Query

題目描述

输入用户、团队、资源和权限边。权限可以从团队继承,也可以在资源层被 deny 覆盖。实现 can_access(user_id, resource_id, action),并支持批量查询。返回结果需要说明命中的授权路径或 deny 原因。

解題思路

把图拆成两层:用户到团队的成员关系,资源到父资源的层级关系。查询时先收集用户直接权限和团队继承权限,再沿资源父链向上查找 action 对应规则。deny 优先级高于 allow;同一层多个规则冲突时按资源距离和规则时间戳决定。批量查询不能每次全图搜索,可以缓存 user_id -> effective_groupsresource_id -> ancestor_chain。返回解释路径时保存命中的 rule id、来源团队和资源层级,方便 Debug。複雜度:单次查询取决于团队数和资源深度,缓存后能降到接近 O(g + d)。

第三题:Debug – Event Replay State

題目描述

给一段 AI 生成的 event replay 代码,函数会按事件流恢复对象状态。隐藏测试里出现重复事件、乱序更新、删除后复活、以及 checkpoint 之后 replay 结果不一致。要求保留函数签名,修复状态恢复逻辑并补测试。

解題思路

先定义事件不变量:create 只能创建不存在的对象,update 必须基于当前版本,delete 会写入 tombstone,重复 event_id 直接跳过。乱序事件用 (object_id, version) 校验,旧版本更新不能覆盖新状态;checkpoint 之后继续 replay 时要把 tombstone、版本号和已处理 event id 一起恢复。修复时先加最小测试:重复 create、delete 后 update、checkpoint 后重复 replay、多对象交错事件和空事件流。代码改动集中在去重、版本校验和 tombstone 处理,不要把 replay 主流程拆散。

備考建議

Palantir OA 要把“数据模型先行”当成习惯。读题后先写对象、边、状态和冲突规则,再决定哈希表、队列、DFS、拓扑排序或状态机。题面带业务词时不要急着翻译成算法模板,先把输入输出和不变量写下来。Debug 题要先让测试复现 bug,再修最小必要逻辑。

FAQ

Palantir OA 需要重点练哪些方向?

图建模、拓扑排序、权限继承、对象 diff、事件 replay、缓存失效和状态机都值得练。每道题都要能解释数据结构选择和边界测试。

Decomposition 题怎么写得更稳?

先拆实体和关系,再写核心函数。不要把所有逻辑塞进一个循环;比较器、权限判断、状态转移和排序规则单独写,测试会更清楚。

Debug 题最该先看哪里?

先看不变量。事件类题要盯住去重、版本、删除状态和 replay 幂等性;缓存类题要盯住 key、失效条件和读路径过滤。

关于 CSOFFERPREP

进 VO 之前,可以找 CSOFFERPREP 做实时面试助攻和备考辅导。CSOFFERPREP 深耕北美 IT 行业多年,已帮助万余名学生进入全球 500 强企业。导师来自一线大厂资深工程师和面试官,对 Palantir 这类注重工程文化的公司的面试套路很熟悉。无论是 OA辅助、OA 辅导、VO 辅助、VO 模拟面试、VO 辅助还是系统设计辅助,都可以获得更有针对性的准备方案:CSOFFERPREP · 服务详情

参考来源