LeetCode 給定一個 N 叉樹,找到其最大深度。 最大深度是指從根節點到最遠葉子節點的最長路徑上的節點總數
阿新 • • 發佈:2018-11-27
/*
// Definition for a Node.
class Node {
public:
int val;
vector<Node*> children;
Node() {}
Node(int _val, vector<Node*> _children) {
val = _val;
children = _children;
}
};
*/
class Solution {
public:
int maxDepth(Node* root) {
int depth = 1;
if(root == NULL)
return 0;
else
{
int max = 0;
for(int i = 0;i<root->children.size();i++)
{
int n = 1 + maxDepth(root->children.at(i));
max = (max < n)?n:max;
}
depth = (depth >max)?depth:max;
return depth;
}
}
};
思考:
N叉樹 要遍歷每個子叉樹,所以,可以從向量 size讀取。然後判斷最大叉樹的 深度。
坑: 只有一個節點的深度=1;