BFS print BT all path from root to leaf
来源:互联网 发布:d3.js 地图轨迹点 编辑:程序博客网 时间:2024/06/11 17:44
public class BFS_RootToLeaf { public List<String> getPath(TreeNode root) { List<String> res = new LinkedList<>(); if (root == null) { return res; } Queue<TreeNode> queue = new LinkedList<>(); Queue<StringBuilder> sbQueue = new LinkedList<>(); queue.offer(root); StringBuilder temp = new StringBuilder(); temp.append(root.val); sbQueue.offer(temp); while (!queue.isEmpty()) { int size = queue.size(); for (int i = 0; i < size; i++) { TreeNode node = queue.poll(); StringBuilder sb = sbQueue.poll(); if (node.left == null && node.right == null) { res.add(sb.toString()); } if (node.left != null) { queue.offer(node.left); StringBuilder nsb = new StringBuilder(); nsb.append(sb.toString() + "->" + node.left.val); sbQueue.offer(nsb); } if (node.right != null) { queue.offer(node.right); StringBuilder nsb = new StringBuilder(); nsb.append(sb.toString() + "->" + node.right.val); sbQueue.offer(nsb); } } } return res; } public static void main(String[] args) { TreeNode root = new TreeNode(1); TreeNode node2 = new TreeNode(2); TreeNode node3 = new TreeNode(3); TreeNode node4 = new TreeNode(4); TreeNode node5 = new TreeNode(5); root.left = node2; root.right = node3; node3.left = node4; node3.right = node5; BFS_RootToLeaf sol = new BFS_RootToLeaf(); List<String> results = sol.getPath(root); for (String result : results) { System.out.println(result); } }}
0 0
- BFS print BT all path from root to leaf
- 【Leetcode】Path Sum from root to leaf in binary tree
- return longest tree path from root to leaf
- leetcode sum from root to leaf
- Binary Tree Paths return all root-to-leaf paths.
- Sum Root to Leaf Numbers,Path Sum II
- Sum Root to Leaf Numbers 二叉树的path 和
- Print all nodes that are at distance k from a leaf node
- sum root to leaf
- Sum Root to Leaf Numbers
- Sum Root to Leaf Numbers
- Sum Root to Leaf Numbers
- Sum Root to Leaf Numbers
- Sum Root to Leaf Numbers
- Sum Root to Leaf Numbers
- Sum Root to Leaf Numbers
- Sum Root to Leaf Numbers
- Sum Root to Leaf Numbers
- LintCode_154 Regular Expression Matching
- javaweb学习总结(四十一)——Apache的DBUtils框架学习
- LinCode_187 Gas Station
- 凌晨四点零九分
- javaweb学习总结(四十二)——Filter(过滤器)学习
- BFS print BT all path from root to leaf
- javaweb学习总结(四十三)——Filter高级开发
- Mac中安装tar包的Mysql服务
- javaweb学习总结(四十四)——监听器(Listener)学习
- LintCode_189 First Missing Positive
- javaweb学习总结(四十五)——监听器(Listener)学习二
- javabean在jsp页面的使用
- javaweb学习总结(四十六)——Filter(过滤器)常见应用
- LintCode_190 Next Permutation II