LeetCode 257 二叉树的所有路径

tech2025-06-06  11

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

说明: 叶子节点是指没有子节点的节点。

示例:

输入:

1 / 2 3 5

输出: [“1->2->5”, “1->3”]

解释: 所有根节点到叶子节点的路径为: 1->2->5, 1->3

1.DFS(递归)

class Solution{ public List<String> binaryTreePaths(TreeNode root) { List<String> result = new ArrayList(); DFS(root, result, new StringBuffer()); return result; } private void DFS(TreeNode root, List<String> result, StringBuffer SB){ //因为要对List中单独的字符串做出变动,所以要用StringBuffer if (root != null){ SB.append(root.val); if (root.left == null && root.right == null){ result.add(SB.toString()); }else{ SB.append("->"); //需要加上一个原来就存在的String参数 DFS(root.left, result, new StringBuffer(SB)); DFS(root.right, result, new StringBuffer(SB)); } } } }
最新回复(0)