恒美微站
首页
关于我们
建站服务
主题模板
案例展示
资讯中心
联系我们
LeetCode hot100——104.二叉树的最大深度
首页
资讯中心
/
LeetCode hot100——104.二叉树的最大深度
LeetCode hot100——104.二叉树的最大深度
发布时间:2026/9/12 18:25:18
题目给定一个二叉树root返回其最大深度。二叉树的最大深度是指从根节点到最远叶子节点的最长路径上的节点数。示例 1输入root [3,9,20,null,null,15,7]输出3示例 2输入root [1,null,2]输出2提示树中节点的数量在[0, 104]区间内。-100 Node.val 100题解题解一DFS后序遍历/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeNode(int val) { this.val val; } * TreeNode(int val, TreeNode left, TreeNode right) { * this.val val; * this.left left; * this.right right; * } * } */ class Solution { public int maxDepth(TreeNode root) { if(root null) return 0; return Math.max(maxDepth(root.left),maxDepth(root.right)) 1; } }题解二BFS层序遍历/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeNode(int val) { this.val val; } * TreeNode(int val, TreeNode left, TreeNode right) { * this.val val; * this.left left; * this.right right; * } * } */ class Solution { public int maxDepth(TreeNode root) { if (root null) return 0; ListTreeNode queue new LinkedList(); queue.add(root); ListTreeNode tmp new LinkedList(); int res 0; while (!queue.isEmpty()) { tmp new LinkedList(); for(TreeNode node : queue) { if (node.left ! null) tmp.add(node.left); if (node.right ! null) tmp.add(node.right); } queue tmp; res; } return res; } }