Leetcode 515. 각 트리 행에서 최대값 찾기
1435 단어 Leetcode
두 갈래 나무의 줄마다 가장 큰 값을 찾아야 합니다.
예:
:
1
/ \
3 2
/ \ \
5 3 9
: [1, 3, 9]
기본 사고방식: 두 갈래 나무의 층계가 두루 훑어볼 뿐이다.두 개의 수조로 매번 훑어보는 결과를 교대로 기록하고 최대 값을 결과에 저장합니다.
class Solution {
public:
vector largestValues(TreeNode* root) {
vector Res;
int Max = INT_MIN;
if (root == NULL) return Res;
vector First,Second;
First.push_back(root);
Res.push_back(root->val);
while (First.size() != 0 || Second.size() != 0) {
//
for (TreeNode* TN : First) {
if (TN->left != NULL) {
Second.push_back(TN->left);
Max = max(Max, TN->left->val);
}
if (TN->right != NULL) {
Second.push_back(TN->right);
Max = max(Max, TN->right->val);
}
}
if (Second.size() != 0) {
Res.push_back(Max);
}
First.clear();
Max = INT_MIN;
//
for (TreeNode* TN : Second) {
if (TN->left != NULL) {
First.push_back(TN->left);
Max = max(Max, TN->left->val);
}
if (TN->right != NULL) {
First.push_back(TN->right);
Max = max(Max, TN->right->val);
}
}
if (First.size() != 0) {
Res.push_back(Max);
}
Second.clear();
Max = INT_MIN;
}
return Res;
}
};
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
LeetCode 문제풀이 노트 113.경로 총 II경로 총 II 제목 요구 사항 문제풀이 두 갈래 나무와 목표와 뿌리 노드에서 잎 노드까지의 모든 경로를 찾는 것은 목표와 같은 경로입니다. 설명: 잎 노드는 하위 노드가 없는 노드를 가리킨다. 예: 다음과 같은 두 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.