平衡二叉树由于logN的时间效率,在排序和查找中有重要应用。
实现
形态匀称的二叉树称为平衡二叉树 (Balanced binary tree) ,其严格定义是:
一棵空树是平衡二叉树;若 T 是一棵非空二叉树,其左、右子树为 TL 和 TR ,令 hl 和 hr 分别为左、右子树的深度。当且仅当
①TL 、 TR 都是平衡二叉树;
② | hl - hr |≤ 1;
时,则 T 是平衡二叉树。
以下是它的c代码实现,具体思想参见<<数据结构>>(严蔚敏)一书。
图1.
图2
输出结果如下:
相关文章: