Bài giảng Phân tích thiết kế và giải thuật - Chương 6: Cây đỏ đen

51 30 0
Bài giảng Phân tích thiết kế và giải thuật - Chương 6: Cây đỏ đen

Đ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

Bài giảng Phân tích thiết kế và giải thuật - Chương 6: Cây đỏ đen cung cấp cho người học các kiến thức: Giới thiệu, định nghĩa và tính chất cây đỏ đen, phép quay, cân bằng lại theo kiểu bottom-up, thêm nút mới, loại bỏ nút, tính hiệu quả của cây đỏ đen

CÂY ĐỎ ĐEN 1 Nội dung • • • • • • Giới thiệu Định nghĩa tính chất đỏ đen Phép quay, cân lại theo kiểu bottom-up Thêm nút mới, Loại bỏ nút Tính hiệu đỏ đen Cài đặt Cây tìm kiếm nhị phân (binary search tree) • Cây tìm kiếm nhị phân (TKNP) nhị phân mà khoá nút lớn khoá tất nút thuộc bên trái nhỏ khoá tất nút thuộc bên phải 20 10 35 17 15 22 42 37 Giới thiệu • Cây tìm kiếm nhị phân thuận lợi lớn mặt lưu trữ truy xuất liệu phép tốn tìm kiếm, thêm vào hay loại bỏ phần tử  TKNP CTDL tốt • Hạn chế: – Nếu liệu chèn vào theo thứ tự đuợc xếp không hiệu Khi nhị phân trở nên khơng cân bằng.(Lệch bên trái bên phải) – Khi không cân bằng, khả tìm kiếm nhanh (hoặc chèn xóa) phần tử cho  hạn chế • Cây khơng cân bằng: => giải quyết: đỏ đen, tìm kiếm nhị phân có thêm vài đặc điểm Giới thiệu Các node chèn theo thứ tự tăng dần Định nghĩa Cây đỏ đen (red-black trees) • Cây đỏ đen nhị phân tìm kiếm (BST) với thuộc tính: Mọi node tô màu đỏ màu đen Node gốc node (NIL) phải luôn đen Nếu node đỏ, node phải đen  Trên đường dẫn từ gốc đến nút khơng có node đỏ liên tiếp Mọi đường dẫn từ gốc đến phải có số lượng node đen Định nghĩa đỏ đen • Số lượng node đen đường dẫn từ gốc đến gọi chiều cao đen (black height) Ta phát biểu quy tắc theo cách khác đường dẫn từ gốc đến phải có chiều cao đen 11 14 15 Mỗi nút đỏ đen Nút gốc nút (NIL) có màu đen Nếu nút đen, có màu đỏ 10 37 38 39 40 41 42 43 44 45 Ví dụ: xóa node đỏ đen 14 16 12 15 18 17 14 Xóa nút 16 12 15 18 17 46 14 14 16 12 15 18 17 16 15 18 17 14 Xóa nút 12 restructuring 16 15 18 17 47 14 14 16 15 18 16 15 18 17 17 Xóa nút 17 Xóa nút 18 14 14 recoloring 5 16 15 16 15 48 14 14 5 16 Xóa nút 15 15 Xóa nút 16 14 adjustment 16 14 7 14 recoloring 49 Bài tập áp dụng • Cho đỏ đen sau: 50 Bài tập áp dụng • Anh (chị) trình bày bước xây dựng đỏ đen ứng với thao tác sau: – Thêm nút: 50, 75, 25, 60, 10, 20, 80, 100, 40, 45 – Hủy nút: 80, 20, 50, 25 51 ... có thêm vài đặc điểm Giới thiệu Các node chèn theo thứ tự tăng dần Định nghĩa Cây đỏ đen (red-black trees) • Cây đỏ đen nhị phân tìm kiếm (BST) với thuộc tính: Mọi node tơ màu đỏ màu đen Node... 1: P đen (2) Khả 2: P đỏ X cháu ngoại G (3) Khả 3: P đỏ X cháu nội G G G P X G P X P X 20 Khả 1: P đen P đen trường hợp đơn giản Node thêm vào ln đỏ Nếu node cha đen, khơng có xung khắc đ? ?-? ?ỏ (quy... tính chất đỏ đen Phép quay, cân lại theo kiểu bottom-up Thêm nút mới, Loại bỏ nút Tính hiệu đỏ đen Cài đặt Cây tìm kiếm nhị phân (binary search tree) • Cây tìm kiếm nhị phân (TKNP) nhị phân mà

Ngày đăng: 31/10/2020, 15:24

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan