给定一个二叉树 root ,返回其最大深度。
二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。
示例 1:
输入: root = [3,9,20,null,null,15,7]
输出: 3
示例 2:
输入: root = [1,null,2]
输出: 2
提示:
- 树中节点的数量在
[0, 104]区间内。 -100 <= Node.val <= 100
题解:
class Solution {
//层次遍历
public int maxDepth(TreeNode root) {
if(root==null) return 0;
int depth=0;
Queue <TreeNode>queue=new LinkedList<TreeNode>();
queue.offer(root);
int size=queue.size();
while(!queue.isEmpty()){
while(size!=0){
TreeNode cur=queue.poll();
if(cur.left!=null)
queue.offer(cur.left);
if(cur.right!=null)
queue.offer(cur.right);
size--;
}
size=queue.size();
depth++;
}
return depth;
}
}