刚结束 Adobe 的 coding loop,面的是他们 Creative Cloud org 的 frontend/full-stack 岗。coding 这部分的格式资料不多,我来拆解一下。
OA(online assessment) 正式面试前会有一个 HackerRank OA。2 道题,90 分钟。我遇到的是: 字符串处理(中等,类似在字符串里找所有 anagram window) 图遍历(中偏难,connected components 加了一点变形)
不算 LC 难。如果你 sliding window 和基础 BFS/DFS 熟,基本没问题。时间也挺宽松。
现场的 coding rounds onsite loop 里有 2 轮 coding。每轮 45 分钟,一轮 1 道题加 follow-up。用的是 CoderPad,语言随便选。
我的题: 第 1 轮:实现 LRU cache。对,就是经典题。但后面让我扩展支持 TTL 过期,这里才开始有意思。 第 2 轮:二叉树 serialize/deserialize(也是经典),然后追问如果树非常大,整棵树放不进内存,怎么处理。
“扩展”问题是他们用来区分 seniors 和 mid-level 的点。基础题做出来只是门槛。真正有价值的讨论在后面。
和其他公司比的难度 说实话:比 Google 简单,比 Salesforce 难。他们不是为了难堪你。题型都是常见类型,但扩展部分会看你是不是真能系统性思考。
准备建议 刷 LC medium 足够了。尤其建议把字符串/数组/树的经典题刷一遍,再做至少一道 cache 实现题。别忽略复杂度分析,两轮最后都让我说 time+space。
另外提一句:面试官很友好。没有扑克脸,也不会故意沉默。你走偏了会提示。比我经历过的一些 loop 舒服很多。