LeetCode 路徑總和 II

2021-10-02 10:14:47 字數 1186 閱讀 9935

給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。

說明: 葉子節點是指沒有子節點的節點。

示例:給定如下二叉樹,以及目標和 sum = 22,

5/ \

4   8

/   / \

11  13  4

/  \    / \

7    2  5   1

返回:[

[5,4,11,2],

[5,8,4,5]

]解法一:dfs遞迴

class solution ;

vector> res;

vectorout;

helper(root,sum,out,res);

return res;

}void helper(treenode* root,int sum,vectorout,vector> &res)

if(root->left) helper(root->left,sum - root->val,out,res);

if(root->right) helper(root->right,sum - root->val,out,res);        

}};

效率太低,改進了一下,用了回溯,

class solution ;

vector> res;

vectorout;

helper(root,sum,out,res);

return res;

}void helper(treenode* root,int sum,vector&out,vector> &res)

if(root->left) helper(root->left,sum - root->val,out,res);

if(root->right) helper(root->right,sum - root->val,out,res);   

out.pop_back();     

}};

class solution 

cur = ss.back();

if(!cur->left && !cur->right && val == sum)

else

}return res;

}};

LeetCode 路徑總和 II

給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。說明 葉子節點是指沒有子節點的節點。示例 給定如下二叉樹,以及目標和 sum 22,5 4 8 11 13 4 7 2 5 1 返回 5,4,11,2 5,8,4,5 definition for a binary ...

Leetcode 路徑總和 II

leetcode 給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。說明 葉子節點是指沒有子節點的節點。definition for a binary tree node.class treenode def init self,x self.val x self....

Leetcode之路徑總和II

給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。說明 葉子節點是指沒有子節點的節點。示例 給定如下二叉樹,以及目標和 sum 22,5 4 8 11 13 4 7 2 5 1 返回 5,4,11,2 5,8,4,5 definition for a binary ...