algorithm - 具有一个空子树的二叉树可以是平衡二叉树吗?如果是这样,什么时候?

标签 algorithm binary-tree

平衡二叉树被定义为这样一棵树,使得任何节点的两个子树的高度永远不会相差超过一个。

我的问题是,如果其中一个子树不存在或者子树基本上为 NULL 怎么办

最佳答案

空子树的长度为 0。因此,如果一个子树为空,则另一棵子树的深度必须为 0 或 1。例如这些是平衡树:

   A            A
  / \          / \
     B

但这不是:

   A
  / \
     B
    / \
   C   D

因为 A (B(C,D)) 的右子树深度为 2,而左子树深度为 0。

(B(C,D)) 子树本身是平衡的,但它所属的整棵树不是。

关于algorithm - 具有一个空子树的二叉树可以是平衡二叉树吗?如果是这样,什么时候?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44713114/

相关文章:

algorithm - 高效保存加权移动平均的数据结构/算法

Python Maximum Pairwise Product time limit exceeded 错误

algorithm - 是否有任何保留位置的方法来展平二叉树?

algorithm - 关于递归下降解析器的复杂性

algorithm - 使用自底向上动态规划的多级图时间复杂度分析

c - 在树中搜索(树不是 BST)

algorithm - 范围最小查询基础知识

C 如何将 "draw"一个二叉树发送到控制台

java - 查找出现最小值的数组索引

c++ - C++中的二叉树中序遍历