class Solution { public: int maxDepth(Node* root) { if (root == 0) return 0; int depth = 0; for (int i = 0; i < root->children.size(); i++) { depth = max (depth, maxDepth(root->children[i])); } return depth + 1; } };
时间: 2024-03-18 10:45:58 浏览: 91
leetcode338-leetcode-java:力扣Java解决方案
这段代码实现了 N 叉树的最大深度计算,其中 `root` 是 N 叉树的根节点,`children` 是一个 `vector` 类型的成员变量,表示根节点的所有子节点。`maxDepth` 函数使用递归的方式计算 N 叉树的最大深度。
在循环中,`root->children[i]` 表示根节点的第 i 个子节点。循环的目的是遍历所有子节点,找到最深的那个节点。`max` 函数用于比较当前深度和子节点的深度,取最大值。最后返回的是最大深度加上 1,因为根节点的深度为 1。
希望这能够解决你的问题,如果还有任何疑问,欢迎继续提问。
阅读全文