027 · Binary Tree Paths

algorithm
Published

June 2, 2026

Problem

给定一棵二叉树的根节点 root

请返回这棵树中所有从根节点到叶子节点的路径。

每条路径需要用字符串表示,节点之间用 -> 连接。

叶子节点是没有左孩子、也没有右孩子的节点。

例如,下面这棵树有两条从根节点到叶子节点的路径:

    1
   / \
  2   3
   \
    5

第一条路径是:

1 -> 2 -> 5

第二条路径是:

1 -> 3

所以应该返回:

["1->2->5", "1->3"]

注意,路径必须从根节点开始,并且必须走到叶子节点才算完整。不能只走到中间某个节点就停止。

Examples

示例 1

Input:  root = [1,2,3,null,5]
Output: ["1->2->5", "1->3"]

解释:树中有两个叶子节点 53,对应的根到叶子路径分别是 1->2->51->3

示例 2

Input:  root = [1]
Output: ["1"]

解释:只有一个节点时,根节点本身也是叶子节点,所以唯一的路径就是 "1"

示例 3

Input:  root = [1,2]
Output: ["1->2"]

解释:节点 2 是唯一的叶子节点,所以只有一条完整路径。

Constraints

  • 树中节点的数量范围是 \([1, 100]\)
  • \(-100 \leq\) Node.val \(\leq 100\)