分享一下最近的 Meta SWE E4 电话面试经验
以下是被问到的问题:
Q1) - https://leetcode.com/problems/buildings-with-an-ocean-view/
没有变体,标准版本。
面试官提到允许从右向左遍历,所以我给出了方法。
for 循环中有一个小语法错误,面试官指出了,我修复了并用测试用例进行了 dry run。
面试官问代码是否可以更简洁,当时时间和空间都已经优化过了,我一时想不出更多了。(也许可以提一下单调栈方法,但我们继续了。)
Q2) https://leetcode.com/problems/diagonal-traverse/description/
没有变体,标准版本。
我从模拟方法开始,简要提到了对角线索引关系,但没有过多探索。
说实话,我有点困惑,面试官然后把问题改成了一个更简单的“单方向的对角线”版本。
面试官稍微提示了一下关于行/列关系,我详细说明了一下。
使用哈希表编写了更简单版本的代码并进行了 dry run,还口头解释了它将如何处理反向对角线。
面试官问如何进一步优化,我还在思考最初的模拟想法,但在最后一刻,我提到了使用数组而不是哈希表。