Java实现 LeetCode 257 二叉树的所有路径
2023-09-14 08:58:06 时间
257. 二叉树的所有路径
给定一个二叉树,返回所有从根节点到叶子节点的路径。
说明: 叶子节点是指没有子节点的节点。
示例:
输入:
1
/ \
2 3
\
5
输出: [“1->2->5”, “1->3”]
解释: 所有根节点到叶子节点的路径为: 1->2->5, 1->3
/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
class Solution {
public List<String> binaryTreePaths(TreeNode root) {
String path=new String("");
List<String> list = new ArrayList<>();
helper(root,path,list);
return list;
}
public void helper(TreeNode root,String path,List<String> paths)
{
if(root!=null)
{
path+=Integer.toString(root.val);
if(root.left==null && root.right == null)
paths.add(path);
else{
path+="->";
helper(root.left,path,paths);
helper(root.right,path,paths);
}
}
}
}
相关文章
- Java文件上传
- Java实现 LeetCode 820 单词的压缩编码(暴力)
- Java实现 LeetCode 754 到达终点数字(暴力+反向)
- Java实现 LeetCode 697 数组的度(类似于数组的map)
- Java实现 LeetCode 654 最大二叉树(递归)
- Java实现 LeetCode 649 Dota2 参议院(暴力大法)
- Java实现 LeetCode 638 大礼包(阅读理解题,DFS)
- Java实现 LeetCode 623 在二叉树中增加一行(遍历树)
- Java实现 LeetCode 563 二叉树的坡度(又是一个遍历树)
- Java实现 LeetCode 380 常数时间插入、删除和获取随机元素
- Java实现 LeetCode 354 俄罗斯套娃信封问题
- Java实现 LeetCode 331 验证二叉树的前序序列化
- Java实现 LeetCode 295 数据流的中位数
- Java实现 LeetCode 257 二叉树的所有路径
- Java实现 LeetCode 236 二叉树的最近公共祖先
- Java实现 LeetCode 146 LRU缓存机制
- Java实现 LeetCode 145 二叉树的后序遍历
- Java实现 LeetCode 134 加油站
- Java实现 LeetCode 112 路径总和
- Java实现 LeetCode 111 二叉树的最小深度
- Java实现 LeetCode 103 二叉树的锯齿形层次遍历
- Java实现 LeetCode 102 二叉树的层次遍历
- Java实现 LeetCode 105 从前序与中序遍历序列构造二叉树
- Java实现 LeetCode 94 二叉树的中序遍历
- Java实现 LeetCode 33 搜索旋转排序数组
- Java实现 LeetCode 29 两数相除
- Java实现 LeetCode 208 实现 Trie (前缀树)
- java 11 标准Java异步HTTP客户端
- 使用Java标准的java.util.EventListener实现观察者-发布者设计模式