思路:只要是n叉树,一定会有遍历孩子节点的部分,直接for(int i=0;i<root->children.size();i++)即可,在这个循环里递归。
题解c++:
/*
// Definition for a Node.
class Node {
public:
int val;
vector<Node*> children;
Node() {}
Node(int _val) {
val = _val;
}
Node(int _val, vector<Node*> _children) {
val = _val;
children = _children;
}
};
*/
class Solution {
public:
int maxDepth(Node* root) {
if(root==NULL) return 0;
int depth=0;
for(int i=0;i<root->children.size();i++)
{
depth= max(depth,maxDepth(root->children[i]));
}
return depth+1;
}
};