zoukankan      html  css  js  c++  java
  • [LeetCode] 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]
    ]

    与上题一样,继续DFS.
     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 private:
    12     vector<vector<int> > ret;
    13 public:
    14     void dfs(TreeNode *node, int sum, int curSum, vector<int> a)
    15     {
    16         if (node == NULL)
    17             return;
    18         
    19         if (node->left == NULL && node->right == NULL)
    20         {
    21             if (curSum + node->val == sum)
    22             {
    23                 a.push_back(node->val);
    24                 ret.push_back(a);
    25             }
    26             return;
    27         }
    28         
    29         a.push_back(node->val);
    30         dfs(node->left, sum, curSum + node->val, a);
    31         dfs(node->right, sum, curSum + node->val, a);
    32     }
    33     
    34     vector<vector<int> > pathSum(TreeNode *root, int sum) {
    35         // Start typing your C/C++ solution below
    36         // DO NOT write int main() function
    37         ret.clear();
    38         vector<int> a; 
    39         dfs(root, sum, 0, a);
    40         return ret;
    41     }
    42 };
  • 相关阅读:
    Perl的Open函数
    较详细的介绍JNI
    Java多线程单元测试
    sleep函数的简单原理
    Struts与Servlet的冲突
    Ant学习记录
    JDK转码工具
    Throwable
    Entity Framework系列文章导航
    多核时代 .NET Framework 4 中的并行编程1概述
  • 原文地址:https://www.cnblogs.com/chkkch/p/2767760.html
Copyright © 2011-2022 走看看