slide Bài giảng môn cấu trúc dữ liệu 2: Chương 3

50 364 0
slide Bài giảng môn cấu trúc dữ liệu 2: Chương 3

Đ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

TRƯỜNG ĐẠI HỌC AN GIANG KHOA KỸ THUẬT- CÔNG NGHỆ - MÔI TRƯỜNG CẤU TRÚC DỮ LIỆU 1 Chương CÂY ĐỎ ĐEN       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 36 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 3 16 12 15 18 17 46 14 14 16 12 15 18 17 16 15 18 17 Xóa nút 12 restructuring 14 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 16 15 recoloring 16 15 48 14 14 5 16 16 15 Xóa nút 16 Xóa nút 15 14 adjustment 4 14 14 recoloring 49 50 ... 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... 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ắc 3) ,... Ví dụ 50 G 25 (3) P (1) Đổi màu Xoay G 12 (2) 50 75 Đổi màu 25 (1) Đổi màu 75 P 12 (2) Đổi màu 23 P đỏ X cháu ngoại G – Ví dụ 50 G (3) P 75 25 Xoay 50 12 X 12 X 75 P 25 G 24 Khả 3: P đỏ X cháu

Ngày đăng: 08/06/2018, 12:26

Từ khóa liên quan

Mục lục

  • CẤU TRÚC DỮ LIỆU 2

  • Chương 3. CÂY ĐỎ ĐEN

  • Cây tìm kiếm nhị phân binary search tree

  • GIỚI THIỆU

  • Giới thiệu

  • ĐỊNH NGHĨA CÂY ĐỎ ĐEN (red-black trees)

  • Định nghĩa cây đỏ đen

  • Mỗi nút là đỏ hoặc đen

  • Nút gốc và các nút lá (NIL) có màu đen

  • Nếu một nút đen, các con của nó có màu đỏ.

  • PHÉP QUAY (rotations)

  • Phép quay

  • THÊM NODE MỚI

  • Thêm nút mới

  • Slide 15

  • Các phép lật màu trên đường đi xuống

  • Slide 17

  • Slide 18

  • Các phép quay khi chèn node

  • Ba khả năng sau khi chèn nút

  • Khả năng 1: P đen

  • Khả năng 2: P đỏ và X là cháu ngoại của G

  • P đỏ và X là cháu ngoại của G – Ví dụ

  • Slide 24

  • Khả năng 3: P đỏ và X là cháu nội của G

  • Slide 26

  • P đỏ và X là cháu nội của G – ví dụ

  • Slide 28

  • Khả năng 3: P đỏ và X là cháu nội của G (2)

  • Ví dụ: đưa các nút 4,7,12, 15, 3, 5, 14, 18, 16, 17 vào cây đỏ đen

  • Slide 31

  • Slide 32

  • Slide 33

  • Ví dụ: Chèn một nút vào cây đỏ đen

  • Slide 35

  • Slide 36

  • Slide 37

  • Slide 38

  • Slide 39

  • Slide 40

  • Slide 41

  • Slide 42

  • Slide 43

  • Slide 44

  • Slide 45

  • Ví dụ: xóa các node trên cây đỏ đen

  • Slide 47

  • Slide 48

  • Slide 49

  • Slide 50

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

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

Tài liệu liên quan