leet_257. Binary Tree Paths-根到叶子的路径
来源:互联网 发布:在线看熊片的软件 编辑:程序博客网 时间:2024/05/01 06:41
Given a binary tree, return all root-to-leaf paths.
For example, given the following binary tree:
1
/ \
2 3
\
5
All root-to-leaf paths are:
[“1->2->5”, “1->3”]
析:想办法层次遍历,每个结点都保存从根到它的路径,判断是否叶子叶子就放入指定的容器。
public List<String> binaryTreePaths(TreeNode root) { List<String> list = new ArrayList<>(); // <结点,从根到该点的路径信息> Map<TreeNode, String> map = new HashMap<>(); if(root==null) return new ArrayList<>(); map.put(root, root.val+"->"); Queue<TreeNode> queue = new LinkedList<>(); queue.offer(root); while(!queue.isEmpty()){ TreeNode node = queue.poll(); if(node.left!=null){ map.put(node.left, map.get(node)+node.left.val+"->"); queue.offer(node.left); } if(node.right!=null){ map.put(node.right, map.get(node)+node.right.val+"->"); queue.offer(node.right); } // 如果该点是叶子 if(node.left==null && node.right==null) list.add(map.get(node)); } for(int i=0;i<list.size();i++){ String s = list.get(i); list.set(i, s.substring(0, s.length()-2)); } return list; }
0 0
- leet_257. Binary Tree Paths-根到叶子的路径
- 257. Binary Tree Paths (求二叉树中所有根到叶子的路径)
- Binary Tree Paths 二叉树所有从跟节点到叶子节点的路径
- 【Leetcode】Binary Tree Paths 二叉树根结点到所有叶子结点的路径
- Tree----- 257. Binary Tree Paths(二叉树从根节点开始的所有路径)
- lintcode binary-tree-paths 二叉树的所有路径
- 257. Binary Tree Paths 二叉树的路径
- Binary Tree Paths(二叉树的路径)
- 257. Binary Tree Paths | 二叉树的路径
- 【Leetcode】257 Binary Tree Paths 二叉树的路径
- Binary Tree Paths (二叉树路径遍历)
- leetcode:Minimum Depth of Binary Tree(树的根节点到叶子节点的最小距离)【面试算法题】
- oracle tree计算叶子节点到根节点的乘积
- Binary Tree Paths 二叉树的路径(含创建树的代码)
- 257. Binary Tree Paths-LeetCode(树的全部路径)(第一次写树,兴奋)
- 480.Binary Tree Paths-二叉树的所有路径(容易题)
- 打印从根结点到叶子结点的路径(递归)
- 根结点到所有叶子结点的路径问题
- excel文档导入到mysql数据库
- c语言 常见内存错误
- 是否完全二叉搜索树 (30分)
- 爱拼宝宝,电商小程序
- UEFI启动模式下安装Ubuntu 16.04教程
- leet_257. Binary Tree Paths-根到叶子的路径
- 数据结构实验之链表九:双向链表
- [博弈论] cf317 D Game with Powers
- LeetCode 104. Maximum Depth of Binary Tree 题解
- 今天开始陆陆续续写博客,做更优秀的程序员
- maven的安装
- Python EOF 的错误
- 码
- 最熟悉的陌生属性——position