算法 · 30 道灵魂拷问
每题附考察意图、答题框架与加分点:Big-O 直觉 / 二分的前提 / 递归的风险 / BFS vs DFS / 采样策略 / AI 时代还考算法吗
本页解决的问题
先给结论「算法 · 30 道灵魂拷问」要解决的关键问题是什么?
每题附考察意图、答题框架与加分点:Big-O 直觉 / 二分的前提 / 递归的风险 / BFS vs DFS / 采样策略 / AI 时代还考算法吗
让这个结论先证明自己值得留下。 把这一页当成决策工具,而不是需要背下来的定义。把概念连到一个真实任务、一个可观察结果,以及一个能改变你判断的失败上。
写下一个问题:试完这个方法后,你能用什么证据回答它?
结论听起来很完整,却没有检查最关键的假设。
「算法 · 30 道灵魂拷问」里的算法代价曲线
「每题附考察意图、答题框架与加分点:Big-O 直觉 / 二分的前提 / 递归的风险 / BFS vs DFS / 采样策略 / AI 时代还考算法吗」真正训练的不是背诵步骤,而是识别重复工作:输入变大时,程序到底多做了多少次比较、移动或递归。
先找重复工作,再谈快慢
「每题附考察意图、答题框架与加分点:Big-O 直觉 / 二分的前提 / 递归的风险 / BFS vs DFS / 采样策略 / AI 时代还考算法吗」可以拆成输入规模、每轮做什么、以及是否能缩小下一轮范围三个问题。Big-O 是描述增长趋势的语言,不是对每台机器的精确计时;常数、内存和真实数据分布也会影响最终结果。
别把理论最优当成无条件最优
面对 AI 写出的算法,先用小输入手算一遍,再用逐渐放大的数据做基准测试。这样才能把「每题附考察意图、答题框架与加分点:Big-O 直觉 / 二分的前提 / 递归的风险 / BFS vs DFS / 采样策略 / AI 时代还考算法吗」从一句结论变成可检查的性能判断。
从这个例子继续往下看
页面先提出「每题附考察意图、答题框架与加分点:Big-O 直觉 / 二分的前提 / 递归的风险 / BFS vs DFS / 采样策略 / AI 时代还考算法吗」。接下来不要只记住这句话,可以把它变成一个小练习:写下输入、预期结果,以及什么现象会让你重新检查这个判断。
把这条判断带到下一个场景
算法题换成真实任务后,先找出重复工作,再问输入规模如何变化,最后用一个小基准验证理论判断。这样不会把复杂度记成脱离场景的标签。
- 「算法 · 30 道灵魂拷问」:每题附考察意图、答题框架与加分点:Big-O 直觉 / 二分的前提 / 递归的风险 / BFS vs DFS / 采样策略 / AI 时代还考算法吗
最后做一次小而可逆的练习:把页面里的判断放进一个真实输入,写下预期结果和会让你停下来复核的信号。
我把这篇文章里的一个判断改写成了今天可以验证的小实验。比记住结论更有用的是,知道下一步要观察什么。
读完以后我先回头找它成立的条件,而不是直接把方法搬进项目。这个顺序让后面的取舍清楚很多。
如果把这个判断放到真实工作里,最先需要补的约束是什么?我想知道从阅读到第一次实践之间,哪一步最值得先做。
还没有这篇文章的讨论。