LeetCode-113. 경로 총 II
8241 단어 leetcode
113. 경로 총 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 tree node.
* struct TreeNode {
* int val;
* TreeNode *left;
* TreeNode *right;
* TreeNode(int x) : val(x), left(NULL), right(NULL) {}
* };
*/
class Solution {
private:
vector<int> v; //
public:
vector<vector<int>> pathSum(TreeNode* root, int sum) {
vector<vector<int>> vec;
if(!root) return vec;
v.push_back(root->val);
path(root,sum-root->val,vec);
return vec;
}
void path(TreeNode* l,int sum,vector<vector<int>>& vec)
{
//if(sum<0) return;
if(sum == 0 && l->left == NULL && l->right == NULL)
{
vec.push_back(v);
return;
}
if(l->left)
{
v.push_back(l->left->val);
path(l->left,sum-l->left->val,vec);
v.pop_back();
}
if(l->right)
{
v.push_back(l->right->val);
path(l->right,sum-l->right->val,vec);
v.pop_back();
}
}
};
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
0부터 시작하는 LeetCode Day8 「1302. Deepest Leaves Sum」
해외에서는 엔지니어의 면접에 있어서 코딩 테스트라고 하는 것이 행해지는 것 같고, 많은 경우, 특정의 함수나 클래스를 주제에 따라 실장한다고 하는 것이 메인이다.
빠른 이야기가 본고장에서도 행해지고 있는 것 같은 코...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.
5
/ \
4 8
/ / \
11 13 4
/ \ / \
7 2 5 1
[
[5,4,11,2],
[5,8,4,5]
]
/**
* Definition for a binary tree node.
* struct TreeNode {
* int val;
* TreeNode *left;
* TreeNode *right;
* TreeNode(int x) : val(x), left(NULL), right(NULL) {}
* };
*/
class Solution {
private:
vector<int> v; //
public:
vector<vector<int>> pathSum(TreeNode* root, int sum) {
vector<vector<int>> vec;
if(!root) return vec;
v.push_back(root->val);
path(root,sum-root->val,vec);
return vec;
}
void path(TreeNode* l,int sum,vector<vector<int>>& vec)
{
//if(sum<0) return;
if(sum == 0 && l->left == NULL && l->right == NULL)
{
vec.push_back(v);
return;
}
if(l->left)
{
v.push_back(l->left->val);
path(l->left,sum-l->left->val,vec);
v.pop_back();
}
if(l->right)
{
v.push_back(l->right->val);
path(l->right,sum-l->right->val,vec);
v.pop_back();
}
}
};
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
0부터 시작하는 LeetCode Day8 「1302. Deepest Leaves Sum」해외에서는 엔지니어의 면접에 있어서 코딩 테스트라고 하는 것이 행해지는 것 같고, 많은 경우, 특정의 함수나 클래스를 주제에 따라 실장한다고 하는 것이 메인이다. 빠른 이야기가 본고장에서도 행해지고 있는 것 같은 코...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.