博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【leetcode】Path Sum II
阅读量:5158 次
发布时间:2019-06-13

本文共 1453 字,大约阅读时间需要 4 分钟。

Path Sum II

Given a binary tree and a sum, find all root-to-leaf paths where each path's sum equals the given sum.

For example:
Given the below binary tree and 
sum = 22,
5             / \            4   8           /   / \          11  13  4         /  \    / \        7    2  5   1

return

[   [5,4,11,2],   [5,8,4,5]]
 
 
采用深度优先搜索即可
 
1 /** 2  * Definition for binary tree 3  * struct TreeNode { 4  *     int val; 5  *     TreeNode *left; 6  *     TreeNode *right; 7  *     TreeNode(int x) : val(x), left(NULL), right(NULL) {} 8  * }; 9  */10 class Solution {11 public:12     vector
> pathSum(TreeNode *root, int sum) {13 vector
tmp;14 vector
> result;15 if(root==NULL)16 {17 return result;18 }19 DFS(root,sum,tmp,result);20 return result;21 22 }23 24 void DFS(TreeNode *root,int &sum, vector
tmp,vector
> &result,int cur=0)25 {26 if(root==NULL)27 {28 return;29 }30 31 int val=root->val;32 tmp.push_back(val);33 34 if(root->left==NULL&&root->right==NULL)35 {36 if(cur+val==sum) result.push_back(tmp);37 return;38 }39 DFS(root->left,sum,tmp,result,cur+val);40 DFS(root->right,sum,tmp,result,cur+val);41 }42 };

 

转载于:https://www.cnblogs.com/reachteam/p/4199319.html

你可能感兴趣的文章
Android Webview中解决H5的音视频不能自动播放的问题
查看>>
Android微信SDK API 调用教程【转】
查看>>
Android开发优化之——对Bitmap的内存优化
查看>>
最近的工作感悟
查看>>
JAVA数据类型
查看>>
C# 防火墙操作之启用与关闭
查看>>
在ASP.NET MVC中如何预防Cookie的窃取攻击(转载)
查看>>
EL表达式
查看>>
jaeger 使用初探
查看>>
IOS成长之路-Nsstring搜索方法rangeOfString
查看>>
重温ASP.NET WebAPI(二)进阶
查看>>
为什么macos开机黑屏但是有声音?
查看>>
002—对数组的几种基本操作
查看>>
解构在架构设计中的运用
查看>>
1025 反转链表(链表,reverse)
查看>>
刷题总结——宠物收养所(bzoj1208)
查看>>
python+selenium运行时,提示元素不可见
查看>>
SQL SERVER实践应用--TED透明数据加密及性能测试(转)
查看>>
新东方雅思词汇---7.2、warrant
查看>>
php开发面试题---php面试题英语(How do you debug a PHP application)
查看>>