文章目录

  • 1. 题目信息
  • 2. 解题

1. 题目信息

给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。

说明: 叶子节点是指没有子节点的节点。

示例:
给定如下二叉树,以及目标和 sum = 22,5/ \4   8/   / \11  13  4/  \    / \7    2  5   1
返回:[[5,4,11,2],[5,8,4,5]
]

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/path-sum-ii
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

类似题目LeetCode 112

class Solution {public:vector<vector<int>> pathSum(TreeNode* root, int sum) {if(!root)return {};vector<vector<int>> ans;vector<int> way;path(root, 0, sum, way, ans);return ans;}void path(TreeNode *root, int cursum, int &sum, vector<int> way, vector<vector<int>> &ans){if(!root)return;way.push_back(root->val);path(root->left, cursum+root->val, sum, way, ans);way.pop_back();way.push_back(root->val);path(root->right, cursum+root->val, sum, way, ans);if(!root->left && !root->right && cursum+root->val == sum){ans.push_back(way);}}
};

《剑指Offer》同题:面试题34. 二叉树中和为某一值的路径

class Solution {vector<vector<int>> ans;vector<int> temp;
public:vector<vector<int>> pathSum(TreeNode* root, int sum) {if(!root)return {};dfs(root,sum,0);return ans;}void dfs(TreeNode* root, int& sum, int s){if(root && !root->left && !root->right){if(s+root->val == sum){temp.push_back(root->val);ans.push_back(temp);temp.pop_back();}return;}temp.push_back(root->val);if(root->left)dfs(root->left,sum,s+root->val);if(root->right)dfs(root->right,sum,s+root->val);temp.pop_back();}
};

LeetCode 113. 路径总和 II(回溯)相关推荐

  1. Java实现 LeetCode 113 路径总和 II

    113. 路径总和 II 给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径. 说明: 叶子节点是指没有子节点的节点. 示例: 给定如下二叉树,以及目标和 sum = ...

  2. LeetCode——113 路径总和 II(JAVA)

    给你二叉树的根节点 root和一个整数目标和 targetSum,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径. 叶子节点 是指没有子节点的节点. 示例 1: 输入:root = [5, ...

  3. leetcode 113. 路径总和 II

    难度:中等 频次:60 题目: 给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径. 叶子节点 是指没有子节点的节点. 解 ...

  4. 54. Leetcode 113. 路径总和 II (二叉树-二叉树路径和)

    给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径.叶子节点 是指没有子节点的节点.示例 1: 输入:root = [5, ...

  5. leetcode 113. 路径总和 II(Path Sum II)

    目录 题目描述: 示例: 解法: 题目描述: 给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径. 说明: 叶子节点是指没有子节点的节点. 示例: 给定如下二叉树,以及 ...

  6. Leetcode 113. 路径总和 II 解题思路及C++实现

    解题思路: 典型的深度优先搜索或回溯法的问题. /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNo ...

  7. LeetCode 112. 路径总和 、113. 路径总和 II 思考分析

    目录 112. 路径总和 题目 递归解 递归解,其他人的解法 迭代解,其他人的解法 113. 路径总和 II 题目 递归解 递归解,参考别人的思路 112. 路径总和 题目 给定一个二叉树和一个目标和 ...

  8. 113. 路径总和 II golang

    113. 路径总和 II 给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径. 说明: 叶子节点是指没有子节点的节点. 示例: 给定如下二叉树,以及目标和 sum = ...

  9. 【Leetcode】113. 路径总和 II

    给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径. 说明: 叶子节点是指没有子节点的节点. 示例: 给定如下二叉树,以及目标和 sum = 22, 5         ...

最新文章

  1. Android:problem opening wizard the selected wizard could not be started
  2. junit、hamcrest、eclemma的安装与使用
  3. Spring --- SpEL
  4. 【剑指offer-Java版】49把字符串转换为整数
  5. sql 查询重复行数据
  6. 50-20-200-配置-checkpoint配置
  7. java 防止证书导出_如何把安全证书导入到java中的cacerts证书库
  8. Android 2.3发短信详细流程
  9. iPhone Web App及优缺点【书摘】
  10. pageadmin CMS网站建设教程:站点的添加和管理
  11. 论文|完整空间多任务模型(Entire Space Multi-Task Model)
  12. 手机插了sd卡显示无服务器,手机sd卡无法读取之sd卡无文件系统或文件系统不受支持怎么办...
  13. 代码写过300张可视化,为什么建议你用报表工具开发数据大屏?
  14. 【JS组件系列】——表格组件神器:bootstrap table(二:父子表和行列调序)
  15. 在ArcGIS Online中创建三维图层和网络场景(2017.9)
  16. vim工具——常用插件
  17. Deepin Linux15 华为荣耀笔记本MagicBook2019使用-安装深度应用商店和应用软件
  18. 格兰仕滚筒洗衣机学习
  19. 判断文件夹是否存在的方法
  20. 考研英语真题笔记 2020,Java数据结构面试题及答案

热门文章

  1. Github远程仓库管理
  2. 每周分享之cookie详解
  3. 数据压缩 第二次作业
  4. [jstl] forEach标签使用
  5. linux 编译安装apache
  6. 周报_2012第11周(2012/03/11-2012/03/17)
  7. WINCE应用的UI实现方案
  8. Dev C++,一个好玩的猜数字游戏
  9. linux内核定时器使用
  10. python基于opencv的手势识别_怎么在Python3.5 中利用OpenCV实现一个手势识别功能