559.N叉树的最大深度
程序员文章站
2022-07-13 17:36:24
...
给定一个 N 叉树,找到其最大深度。
最大深度是指从根节点到最远叶子节点的最长路径上的节点总数。
例如,给定一个 3叉树 :
我们应返回其最大深度,3。
说明:
树的深度不会超过 1000。
树的节点总不会超过 5000。
来源:力扣(LeetCode)
int maxDepth(Node* root) {
if(root==NULL) return 0;//可能连根都没有,自然是0。当时没想到
if(root->children.size()==0) return 1;//此节点没有子树,返回自身高度1
int ans=0;
for(auto a:root->children){//对于一个特定的节点,遍历它的所有子树,找出最大高度。
ans=max(ans,maxDepth(a));
}
ans++;//对于一个特定的节点,遍历完成,再加上自身高度。
return ans;
}
这题咋说呢,内心是非常复杂的。
第一次独立写出这递归题。
同时也知道了力扣的测评姬是真的,看人。。。。
当然了,这题用队列层序遍历也可。