二叉树的路径和-LintCode
来源:互联网 发布:sql数据库开发 编辑:程序博客网 时间:2024/04/29 06:50
给定一个二叉树,找出所有路径中各节点相加总和等于给定 目标值 的路径。
一个有效的路径,指的是从根节点到叶节点的路径。
样例
给定一个二叉树,和 目标值 = 5:
1 / \ 2 4 / \2 3
返回:
[ [1, 2, 2], [1, 4]]
#ifndef C376_H#define C376_H#include<iostream>#include<vector>using namespace std;class TreeNode{public: int val; TreeNode *left, *right; TreeNode(int val) { this->val = val; this->left = this->right = NULL; }};class Solution {public: /* * @param root: the root of binary tree * @param target: An integer * @return: all valid paths */ vector<vector<int>> binaryTreePathSum(TreeNode * root, int target) { // write your code here vector<vector<int>> v; vector<int> val; if (root == NULL) return v; TreeNode *node = root; buildVector(node, target, 0, v, val); return v; } void buildVector(TreeNode *root, int target, int num,vector<vector<int>> &v,vector<int> val) { num += root->val; val.push_back(root->val); if (target == num && (root->left == NULL&&root->right == NULL)) v.push_back(val); if (root->left != NULL) buildVector(root->left, target, num, v, val); if (root->right != NULL) buildVector(root->right, target, num, v, val); num -= root->val; val.pop_back(); }};#endif
阅读全文
0 0
- Lintcode 二叉树的路径和
- binaryTreePathSum 二叉树的路径和 lintcode
- lintcode,二叉树的路径和
- LintCode | 376. 二叉树的路径和
- LintCode 376-二叉树的路径和
- LintCode 二叉树的路径和
- 二叉树的路径和-LintCode
- LintCode 二叉树的路径和
- lintcode[2] 二叉树的路径和
- LintCode:二叉树的路径和
- [LintCode]376.二叉树的路径和
- LintCode:二叉树的路径和276
- 二叉树的路径和-LintCode
- [Lintcode] #376 二叉树的路径和
- LintCode 二叉树的路径和
- Lintcode 376. 二叉树的路径和
- [LintCode 376] 二叉树的路径和(Python)
- 二、lintcode刷题记录--二叉树的路径和
- 一次线上故障问题定位和解决
- 如何对二维数组进行排序
- Mybatis 延迟加载详解
- java统计list不同元素,满足n个返回
- 52.Scala中路径依赖代码实战详解
- 二叉树的路径和-LintCode
- PHP创建迅雷、快车、旋风链接
- Hrbust 2319 Number Game【思维+优先队列】
- node csv文件流读取
- iOS Podfile文件常用库
- 53.Scala中结构类型实战详解
- Codeforces 730 C Bulmart [bfs+贪心]
- Hibernate 配置 MySQL dialect 解决由MySQL版本导致的问题
- 缓解数据倾斜的方案浅谈