考虑下面的AVL树。
60
/ \
20 100
/ \
80 120
插入70之后,以下哪个更新了AVL树
A
70
/ \
60 100
/ / \
20 80 120
B
100
/ \
60 120
/ \ /
20 70 80
C
80
/ \
60 100
/ \ \
20 70 120
D
80
/ \
60 100
/ / \
20 70 120
(A) A
(B) B
(C) C
(D) D答案: (C)
说明:请参考以下有关AVL插入中使用的步骤。
AVL树|设置1(插入)
After insertion of 70, tree becomes following
60
/ \
20 100
/ \
80 120
/
70
我们从50岁开始向上旅行。我们一直往前走,直到找到一个不平衡的节点。在上述情况下,我们到达节点60并看到60在插入后变得不平衡,这就是Right Left Case。所以我们需要进行两次旋转
60 60 80
/ \ Right Rotate(100) / \ Left Rotate(60) / \
20 100 -----------------> 20 80 ---------------> 60 100
/ \ / \ / \ \
80 120 70 100 20 70 120
/ \
70 120
这个问题的测验