力扣小白刷题之257题二叉树的所有路径

题目描述

给定一个二叉树,返回从根节点到叶子节点的所有路径。

思路

参考了:https://leetcode-cn.com/problems/binary-tree-paths/solution/257java-liang-chong-hui-su-de-fang-shi-dfs-by-ustc/

回溯在于,走到一个叶子节点,要查找别的路径时,要先回退到根节点。
递归结构是:当前节点添加到路径中,然后分别走左右子树(顺序任意)。
利用List集合来存放路径信息,回溯时删除最后一个元素即可。
当递归到叶子节点时,就通过buildPath()函数将元素依次取出构造成符合要求的路径字符串,然后放入结果集中。

代码

力扣小白刷题之257题二叉树的所有路径

注意

  1. List集合的remove()方法
    力扣小白刷题之257题二叉树的所有路径
  2. 时间和空间复杂度力扣小白刷题之257题二叉树的所有路径
  3. 多练习代码书写