1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Cấu trúc dữ liệu và giải thuật: Cấu trúc dữ liệu cây đỏ đen - Bùi Tiến Lên

25 55 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 25
Dung lượng 652,33 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng Cấu trúc dữ liệu và giải thuật: Cấu trúc dữ liệu cây đỏ đen trình bày định nghĩa cây đỏ đen, cấu trúc dữ liệu cho nút cây đỏ đen, các phép biến đổi cây đỏ đen cân bằng, các tình huống xảy ra khi duyệt ngược,... Mời các bạn cùng tham khảo.

Trang 1

CẤU TRÚC DỮ LIỆU CÂY ĐỎ ĐEN

Bùi Tiến Lên01/01/2017

Trang 2

hoặc nút-1 (có 1 con) phải có cùng số lượng nút đen (điềukiện cân bằng)

Nhận xét

Cây đỏ đen là cây tổng quát của cây AVL

Trang 3

Cây đỏ đen (cont.)

Trang 4

Cấu trúc dữ liệu cho nút cây đỏ đen

Cấu trúc dữ liệu để lưu trữ cho nút cây đỏ đen

Trang 5

Tìm kiếm và duyệt

và duyệt cây trên cây đỏ đen tương tự như trên cây nhị phântìm kiếm

Trang 6

Các phép biến đổi cây đỏ đen cân bằng

Có ba phép biển đổi dùng để điều chỉnh cho cây đỏ đen cân bằng

Trang 7

Các phép biến đổi cây đỏ đen cân bằng (cont.)

Thực hiện xoay trái giữa hai nút P và N ; trong đó, N là nút conphải của P

(b) sau khi xoay

Hình 2:Thao tác xoay trái

Trang 8

Các phép biến đổi cây đỏ đen cân bằng (cont.)

Thực hiện xoay phải giữa hai nút P và N ; trong đó, N là nútcon trái của P

(b) sau khi xoay

Hình 3:Thao tác xoay phải

Trang 9

Thêm một nút mới vào cây đỏ đen

nút mới

Trang 10

Các tình huống xảy ra khi duyệt ngược

I Trường hợp 1: Nút đang xét N là nút gốc có màu đỏ

(b) sau khi hiệu chỉnh

Hình 4:TH1 → Đổi màu nút N thành màu đen Dừng hiệu chỉnh

Trang 11

Các tình huống xảy ra khi duyệt ngược (cont.)

I Trường hợp 2: Nút đang xét N là nút đỏ và nút cha P nút

Trang 12

Các tình huống xảy ra khi duyệt ngược (cont.)

I Trường hợp 3: Nút đang xét N là nút đỏ và nút cha P

(b) sau khi hiệu chỉnh

Hình 6: TH3 → Đổi màu nút P thành đen Dừng hiệu chỉnh

Trang 13

Các tình huống xảy ra khi duyệt ngược (cont.)

I Trường hợp 4: Nút đang xét N là nút đỏ và nút cha P và

Trang 14

Các tình huống xảy ra khi duyệt ngược (cont.)

I Trường hợp 5: Nút đang xét N là nút đỏ và nút cha P ,

Trang 15

Các tình huống xảy ra khi duyệt ngược (cont.)

I Trường hợp 6: Nút đang xét N là nút đỏ và nút cha P ,

Trang 16

Các tình huống xảy ra khi duyệt ngược (cont.)

xét

Trang 17

Các tình huống xảy ra khi duyệt ngược (cont.)

Bài tập

Sinh viên hãy cho biết sự thay đổi sau các xử lý

Trang 18

Minh họa thêm phần tử

Trang 19

Minh họa thêm phần tử (cont.)

11

2

54

Trang 20

Minh họa thêm phần tử (cont.)

Trang 21

Xóa một nút

kiếm để xóa phần tử của cây đỏ đen

Trang 23

Định lý về chiều cao của cây đỏ đen

Định nghĩa 2

Một số thuật ngữ cho cây đỏ đen

I Chiều cao (node height ) của một nút x là số nút của một đường đi dài nhất từ nút x đến một nút ngoài

h(x) = max{CountNode(path(x, l))} l là nút ngoài (1)

I Chiều cao đen (black node height ) của một nút x là số nút đen trên đường đi từ nút x đến nút ngoài

h b(x) = CountBlackNode(path(x, l)) l là nút ngoài (2)

Trang 24

Định lý về chiều cao của cây đỏ đen (cont.)

Trang 25

Đánh giá về cây đỏ đen

Phân tích chi phí thực hiện theo n (số lượng nút của cây)

xấu nhất trung bình tốt nhất

Ngày đăng: 11/01/2020, 17:08

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w