leetcode 257. Binary Tree Paths
来源:互联网 发布:tensorflow 下载安装 编辑:程序博客网 时间:2024/06/07 18:26
解题思路:
深度优先,递归遍历二叉树,用path保存当前已经访问过的节点,如果当前节点是叶子节点,则将当前已经访问过的节点作为符合要求的路径加入结果集中。如果当前节点不是叶子节点,递归遍历其左子树,然后递归遍历其右子树。
注意一下代码中,形参path不要用引用
原题目:
Given a binary tree, return all root-to-leaf paths.For example, given the following binary tree: 1 / \2 3 \ 5All root-to-leaf paths are:["1->2->5", "1->3"]
AC解,C++代码,菜鸟一个,请大家多多指正
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: vector<string> ret; stringstream stream; void binaryTreePaths(TreeNode* root, string path) { if (root == NULL) { return; } else { if (!path.empty()) { path += "->"; } string tmp; stream.clear(); stream << root->val; stream >> tmp; path += tmp; if(root->left == NULL && root->right == NULL) { ret.push_back(path); } else { binaryTreePaths(root->left, path); binaryTreePaths(root->right, path); } } } vector<string> binaryTreePaths(TreeNode* root) { string path; binaryTreePaths(root, path); return ret; }};
0 0
- [leetcode] 257. Binary Tree Paths
- 257. Binary Tree Paths LeetCode
- 【LeetCode】257. Binary Tree Paths
- LeetCode 257. Binary Tree Paths
- LeetCode *** 257. Binary Tree Paths
- leetcode 257. Binary Tree Paths
- LeetCode 257. Binary Tree Paths
- Leetcode 257. Binary Tree Paths
- LeetCode-257.Binary Tree Paths
- 【leetcode】257. Binary Tree Paths
- [Leetcode]257. Binary Tree Paths
- LeetCode - 257. Binary Tree Paths
- LeetCode 257. Binary Tree Paths
- [leetcode] 257. Binary Tree Paths
- LeetCode 257. Binary Tree Paths
- 257.[Leetcode]Binary Tree Paths
- LeetCode 257. Binary Tree Paths
- leetcode 257. Binary Tree Paths
- jq实现截取头像上传
- UICollectionView使用
- Android判断当前应用程序处于前台还是后台
- Android手势传递一般过程及其规则研究
- 字符串拆分到数组
- leetcode 257. Binary Tree Paths
- 2017年商汤科技前端面试题
- 使用Apache Commons Net包中的FTPClient实现javaFTP来上传目录(新)
- 多线程同步与单线程异步对比
- PHP 使用PHPExcel实现文件导入与导出功能
- 笔记2.0
- hive中select中DISTINCT的技巧和使用
- 【图】【并查集】亲戚
- JPush(极光推送)