刷题50 二叉树的最大深度

33 阅读1分钟

给定一个二叉树 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;
    }
}