https://leetcode.com/problems/maximum-depth-of-binary-tree/description
Q. 해당 binary tree의 최대 depth 를 찾아라.
Solution.
직관적으로 접근한다.
Depth first로 tree를 traverse 하고, node가 valid 할 때까지 depth를 증가 시킨다.
Tree는 left, right leafe가 있으므로, 둘 중 더 큰 depth만 위로 반환한다.
더보기
int maxDepth_BT(TreeNode* node, int maxDepth)
{
if (node == NULL)
return maxDepth;
int maxL = maxDepth_BT(node->left, maxDepth + 1);
int maxR = maxDepth_BT(node->right, maxDepth + 1);
return max(maxL, maxR);
}
int maxDepth(TreeNode* root)
{
return maxDepth_BT(root, 0);
}
결과.
'Leetcode > Top 100 Liked' 카테고리의 다른 글
[Binary Tree][Medium] 114. Flatten Binary Tree to Linked List (0) | 2024.03.14 |
---|---|
[Binary Tree][Easy] 108. Convert Sorted Array to Binary Search Tree (1) | 2024.03.13 |
[Binary Tree][Medium] 102. Binary Tree Level Order Traversal (0) | 2024.03.09 |
[Binary Tree][Easy] 101. Symmetric Tree (0) | 2024.03.09 |
[Binary Tree][Medium] 98. Validate Binary Search Tree (0) | 2024.03.09 |