Professional Documents
Culture Documents
Trường hợp p là con phải của g
Trường hợp p là con phải của g
mẫu 4 (đối xứng qua gương của mẫu 2) và mẫu 5 (đối xứng qua gương của mẫu
3).
Kết luận: Thuật toán xen vào cây đỏ - đen là như sau.
1. Áp dụng thuật toán xen vào cây tìm kiếm nhị phân đỉnh mới v, đỉnh v được sơn đỏ.
2. Đi từ đỉnh v lên gốc, nếu hai đỉnh cha con cùng là đỏ thì ta áp dụng một trong 5 mẫu biến
đổi đã trình bày,
o Nếu một trong 4 mẫu 2, 3, 4, 5 được áp dụng thì cây đã trở lại là cây đỏ - đen và
dừng lại.
o Nếu mẫu 1 được áp dụng thì luật đỏ lại có thể bị vi phạm, song hai đỉnh cha – con
cùng đỏ đã được đẩy lên trên.
3. Trong trường hợp xấu nhất, hai đỉnh cha – con cùng đỏ được đẩy lên trên cùng, đỉnh cha
là gốc cây. Lúc này ta chỉ cần sơn lại đỉnh cha đen.
Pseudo-code:
RB-INSERT(T, k)
BST-INSERT(T, k)
while k.parent.color == RED
if k.parent == k.parent.parent.right
u = k.parent.parent.left
if u.color == RED
u.color = BLACK
k.parent.color = BLACK
k.parent.parent.color = RED
k = k.parent.parent
else if k == k.parent.left
k = k.parent
LEFT-ROTATE(T, k)
k.parent.color = BLACK
k.parent.parent.color = RED
RIGHT-ROTATE(T, k.parent.parent)
else (same as then clause with “left” and “right” exchanged)
T.root.color = BLACK