其他分享
首页 > 其他分享> > 257.binary-tree-paths

257.binary-tree-paths

作者:互联网

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

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

示例:

输入:

在这里插入图片描述

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

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

解法

使用递归,前序遍历即可

class Solution {
		List<String> res = new ArrayList<>();

		public List<String> binaryTreePaths(TreeNode root) {

			walk(root, null);
			return res;
		}

		private void walk(TreeNode root, String path) {

			path = null == path ? root.val + "" : path + "->" + root.val;
			if (null == root.left && null == root.right) {
				res.add(path);
			}

			if (null != root.left) {
				walk(root.left, path);
			}

			if (null != root.right) {
				walk(root.right, path);
			}
		}
	}

标签:binary,right,tree,节点,walk,path,null,root,257
来源: https://blog.csdn.net/qq_26000415/article/details/118330304