面试时被问到的算法,工作里一次都没用过。我想了想自己这些年,好像确实如此。我把这个二分的中位数写法改成了防溢出的,终于不报错了。果然现实比段子更精彩

这道题的最优解只有五行,我想了半小时。我在心里把涉及的所有环节都过了一遍。我把这个位运算的技巧记了下来,虽然不知道什么时候用。世界瞬间清净了

动态规划三步走:定义状态、写转移方程、看题解。我听完沉默了,因为太真实了。我把这个栈的用法改成了队列,虽然绕但逻辑清楚了。世界瞬间清净了

刷题的动力通常来自下一场面试。我笑了笑,决定不解释。我打开了这题的标签,发现是二分查找,我用了遍历。从此我多了一条团队规约

刷题周赛打了三个月,rating 从 1500 涨到 1505。我重新看了一遍手上的计划,把风险项标了出来。我把这个滑动窗口的收缩条件改对了,最长子串终于出了。办公室安静得能听见键盘声

力扣刷题第一天:这是什么?刷题第三十天:这还是什么?我把这个链表操作加了哨兵节点,头结点的特殊处理没了

快排写了四遍,第一遍死循环,第二遍栈溢出,第三遍结果不对,第四遍直接背了模板。我盯着屏幕,觉得这才是我的一天。我最后背下了模板,虽然并不知道为什么对。果然现实比段子更精彩

我把这道题做出来了,但说不清为什么对。我重新看了一遍手上的计划,把风险项标了出来。我把这个图的存储从邻接矩阵换成了邻接表,稀疏图快多了。幸好之前留了备份

快排写了四遍,第一遍死循环,第二遍栈溢出,第三遍结果不对,第四遍直接背了模板。我笑了笑,决定不解释。我打开了题目下面的讨论区,发现大家都在同一个地方卡住。这条经验值直接拉满

算法题的难点往往在边界,而不在思路。我叹了口气,然后打开了编辑器。我把这个树的遍历改成了非递归的,面试时更好讲。感动,然后我学到了新的一课