AVL平衡二叉树相关问题
AVL平衡二叉树相关问题

AVL平衡二叉树相关问题

1.对于n层高的平衡二叉树至少由几个节点构成

f(n)为n层高平衡二叉树至少需要多少个结点构成:

F(n)=F(n-1)+F(n-2)+1[F(0)=0;F(1)=1;]递归定义

例题:如果AVL树的深度为5(空树的深度定义为0),则此树最少有多少个结点?( A )

A.12

B.20

C.33

D.64

解析:F(5)=F(4)+F(3)+1=(F(3)+F(2)+1)+(F(2)+F(1)+1)……=12

补充:对于给定结点数,生成的AVL树深度最多为log2n(2为底数)。

平衡二叉树的插入和删除

2.在任意一棵非空平衡二叉树(AVL 树)T1​ 中,删除某结点 v 之后形成平衡二叉树 T2​,再将 v 插入 T2​ 形成平衡二叉树 T3​。下列关于 T1​ 与 T3​ 的叙述中,正确的是:(l)

  • I、若 v 是 T1​ 的叶结点,则 T1​ 与 T3​ 可能不相同
  • II、若 v 不是 T1​ 的叶结点,则 T1​ 与 T3​ 一定不同
  • III、若 v 不是 T1​ 的叶结点,则 T1​ 与 T3​ 一定相同

用数组表示二叉树

在一个用数组表示的完全二叉树中,如果根结点下标为1,那么下标为17和19这两个结点的最近公共祖先结点在哪里(数组下标)? (注:两个结点的“公共祖先结点”是指同时都是这两个结点祖先的结点)(B)

A.8

B.4

C.2

D.1

线索二叉树

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注