关于一系列插入,删除和搜索的AVL树和WAVL树之间的比较

时间:2018-04-29 19:31:39

标签: data-structures insert avl-tree

我们从一个空树开始,执行相同的插入,删除和搜索序列。一次使用AVL树,一次使用WAVL树。问题是确定我们改变AVL树中节点等级的次数是否与我们改变WAVL树中节点等级的次数相同(或者数字乘以常数)。

我认为这不是真的。让我们调用序列n的长度。首先,我们进行n / 2次插入。插入在两棵树中或多或少地增加相同数量的等级。我们最终得到了两棵平衡的树木。然后我们使用一个小于以前每个键的键的节点,并执行序列insert(x),delete(x),insert(x),delete(x),...(我们这样做剩下的n / 2次)。

这样,AVL树中的最后n / 2次操作至少需要(n / 2)个记录时间,而在WAVL中则需要n / 2次(可以用潜在的功能证明)。 / p>

1 个答案:

答案 0 :(得分:0)

答案是答案是错误的。一个例子是插入n / 2个节点。然后,交替插入和删除最小节点。 在AVL树中,它将采用(n / 2)* logn,而在WAVL中,它将花费不超过2n次操作。