刷题的动力通常来自下一场面试。我抬起头看了看周围,大家都一样。我把这个图的存储从邻接矩阵换成了邻接表,稀疏图快多了。我把它写进了组内的避坑文档第一章

我把这题的规律总结成了模板,下次大概还是会忘。我先给自己泡了杯茶,做好了打持久战的准备。我打开了这题的标签,发现是二分查找,我用了遍历。感动,然后我学到了新的一课

我把它想成了一道数学题,然后就卡住了。我把整条链路在心里复盘了一遍。我在草稿纸上画满了数组下标和箭头,半小时后终于理清了边界。办公室安静得能听见键盘声

暴力解法能过百分之六十的用例,剩下百分之四十我选择放弃。我不知道该说什么,就笑了笑。我把这题的暴力解法先写了出来,至少能过一半用例。同事说这波操作可以写进新人培训教材

复习的时候翻到了两年前的错题,我发现我还是不会。我打开记录从头到尾扫了一遍。我最后背下了模板,虽然并不知道为什么对。同事说这波操作可以写进新人培训教材

我算了下复杂度,发现暴力解法反而够用。我默默打开了编辑器,准备一步步验证。我把这题的暴力解法先写了出来,至少能过一半用例。我沉默了,但心里是服的

面试官问能不能优化空间复杂度,我说可以,然后当场忘了怎么优化。我想反驳,但发现他说得对。我打开了这题的题解,发现最优解只有四行。复盘会上我们把它列成了案例

算法里最难的部分是把现实问题翻译成状态定义。我忽然觉得,这可能就是这一行的常态。我把这题换成了哈希表的思路,从超时变成了秒过。好在最后有惊无险

这道题我在半年前做过,现在完全没印象。我在心里点了点头。我把这个用例手推了一遍,发现是边界条件没处理。好在最后有惊无险

刷了两百道题之后发现:模板我都知道,但题目它不按模板出。我想了想,觉得这话没法接。我盯着状态转移方程发呆,最后发现初始化条件写错了。世界瞬间清净了