Tan Phat Nguyen's Blog
Data Structure & Algorithms

Cây Đỏ Đen (Red-Black Tree) – Phần 3: Deletion

1. Cập nhật hàm quay cây – Update Rotate
2. Sơ lược về cách xóa một node ở cây đỏ đen
3. Xử lí trường hợp đen đôi – fixDoubleBlack
3.1 sibing.color == BLACK and hasRedChild(sibling)
a) Right right case – Phải phải
b) Right left case – Phải trái
c) Left left case – Trái trái
d) Left right case – Trái phải
3.2 sibing.color == 0 (BLACK) và NOT_hasRedChild(sibling)
3.3 sibing.color == 1 (RED)
3.4 sibing == NULL
3.5 FixDoubleBlack() – CODE
4. Tiến hành xóa – deleteNode(Node* vDelete)
5. Tổng kết – xóa ở cây đỏ đen
Reference