目录

力扣易错:代码

深度优先搜索(递归实现)

  • 结果的收集,必须使用 new ArrayList<>(list),必须要 new ,原因是只收集引用,没有半毛钱用,最后都指向同一个地址,根本没有保存结果!【我在 797 图的深度优先搜索的递归实现中,又又又踩坑了】

图的搜索

  • 用哈希表所表示的邻接表构造有向图的时候,最好预先为每个节点进行初始化,分配一个 list,这样避免在之后遇到出度为0的节点的时候,哈希表返回 null,而造成空指针异常。

动态规划

  • 搞清楚状态是第一步,这种状态一定是可以进行转换的,可以从一个状态变成另一个状态,是稳定的,只与当前的有关,与之前的、未来的都无关
    • 买卖股票,把手中的财富作为状态!

  • 与树相关的问题,特别要注意,左右指针是否写对了,我曾经把root.right通过编辑器的提示直接回车成为了root.left而出错。

技巧

  • 提交之前,自己先想几个特例,看看能不能通过,以此提升自己的正确率,不要寄希望于别人的用例!