描述:给定一个二叉树的根节点 root
。
要求:判断该二叉树是否是一个完全二叉树。
说明:
- 完全二叉树:
- 树的结点数在范围
$[1, 100]$ 内。 -
$1 \le Node.val \le 1000$ 。
示例:
- 示例 1:
输入:root = [1,2,3,4,5,6]
输出:true
解释:最后一层前的每一层都是满的(即,结点值为 {1} 和 {2,3} 的两层),且最后一层中的所有结点({4,5,6})都尽可能地向左。
- 示例 2:
输入:root = [1,2,3,4,5,null,7]
输出:false
解释:值为 7 的结点没有尽可能靠向左侧。
2. 0543. 二叉树的直径
描述:给一个二叉树的根节点 root
。
要求:计算该二叉树的直径长度。
说明:
- 二叉树的直径长度:二叉树中任意两个节点路径长度中的最大值。
- 两节点之间的路径长度是以它们之间边的数目表示。
示例:
- 示例 1:
给定二叉树:
1
/ \
2 3
/ \
4 5
输出:3
解释:该二叉树的长度是路径 [4,2,1,3] 或者 [5,2,1,3]。
描述:给你一棵二叉树的根节点 root
。
要求:返回树的最大宽度。
说明:
-
每一层的宽度:为该层最左和最右的非空节点(即两个端点)之间的长度。将这个二叉树视作与满二叉树结构相同,两端点间会出现一些延伸到这一层的
null
节点,这些null
节点也计入长度。 - 树的最大宽度:是所有层中最大的宽度。
- 题目数据保证答案将会在 32 位带符号整数范围内。
- 树中节点的数目范围是
$[1, 3000]$ 。 -
$-100 \le Node.val \le 100$ 。
示例:
- 示例 1:
输入:root = [1,3,2,5,3,null,9]
输出:4
解释:最大宽度出现在树的第 3 层,宽度为 4 (5,3,null,9)。
- 示例 2:
输入:root = [1,3,2,5,null,null,9,6,null,7]
输出:7
解释:最大宽度出现在树的第 4 层,宽度为 7 (6,null,null,null,null,null,7) 。
- 「0958. 二叉树的完全性检验」习题解析:网页链接、Github 链接
- 「0543. 二叉树的直径」习题解析:网页链接、Github 链接
- 「0662. 二叉树最大宽度」习题解析:网页链接、Github 链接