Bài giảng Phân tích thiết kế và giải thuật - Chương 5: B-Tree

33 4 0
Bài giảng Phân tích thiết kế và giải thuật - Chương 5: B-Tree

Đ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 5: B-Tree cung cấp cho người học các kiến thức: Giới thiệu, định nghĩa B-Tree, các phép toán trên B-Tree. Đây là một tài liệu hữu ích dành cho các bạn sinh viên và những ai quan tâm dùng làm tài liệu học tập và nghiên cứu.

B-TREE 1 B-Tree • Giới thiệu • Định nghĩa B-Tree • Các phép tốn B-Tree Giới thiệu • Cây 2-3-4 ví dụ nhiều nhánh, nhiều nhánh node có nhiều hai node nhiều mục liệu • Một loại khác nhiều nhánh B-tree, hiệu liệu nằm nhớ ngồi Định nghĩa B-Tree • Một B-tree bậc n có đặc tính sau: i) Mỗi node có tối đa 2*n khố ii) Mỗi node ( khơng node gốc) có n khố iii) Mỗi node node có m+1 node (m số khoá trang này) iv) Các khóa tăng dần từ trái sang phải v) Các nút nằm mức Định nghĩa B-Tree Ví dụ: B-tree bậc có mức Ưu điểm B-Tree • B-Tree dạng cân bằng, phù hợp với việc lưu trữ đĩa • B_Tree tiêu tốn số phép truy xuất đĩa tối thiểu cho thao tác • Có thể quản lý số phần tử lớn Các phép toán B-Tree • Tìm phần tử có khóa X • Thêm khố vào vào B –Tree • Xóa khố nút Tìm kiếm phần tử có khóa X • Khố cần tìm X Với m đủ lớn ta sử dụng phương pháp tìm kiếm nhị phân, m nhỏ ta sử dụng phuơng pháp tìm kiếm Nếu X khơng tìm thấy có trường hợp sau xảy ra: i) Ki < X < Ki+1 Tiếp tục tìm kiếm Ci ii) Km < X Tiếp tục tìm kiếm Cm iii) X < K1 tiếp tục tìm kiếm C0 Quá trình tiếp tục node tìm thấy Nếu đến node mà khơng tìm thấy khố, việc tìm kiếm thất bại ,C , Thêm nút vào B-Tree • Tính chất B-Tree: node có số khóa • Thêm nút có khóa X vào B-Tree – Thêm X vào nút – Sau thêm, nút đầy: • Tách nút làm đơi • Chuyển phần tử lên nút cha lan truyền ngược gốc • Nếu gốc bị tách, đặt mức sâu Thêm nút vào B-Tree • Nếu số khóa lớn 2n tách node: – Đưa phần tử lên node cha – Tạo thêm node – Chuyển dời nửa phần tử sang node – Tiếp tục lan truyền node cha (nếu node cha sau thêm > 2n phần tử thực tách node trên) 10 Ví dụ xóa • Xóa (mượn node phải): 19 Ví dụ xóa • Xóa 24, ta đem khóa 22 lên thay Khi node 20,22 cịn 20 (phạm), ta phải đem khóa 22 trở lại node 20,22 Mang 28 lên thêm 20 Ví dụ xóa • Xóa 20: Mượn node phải phần tử Tức mang 32 lên cha, 28 xuống node có khóa 22 21 Ví dụ xóa • Xóa 28: Xóa 9: 22 Ví dụ xóa • Xóa 37: Xóa 17: 23 B-tree: Cân lại sau xóa • Nếu nút anh em kế cận nút xét có số lượng khóa nhiều số lượng tối thiểu – Đưa khóa nút anh em lên nút cha – Đưa khóa nút cha xuống nút xét • Nếu tất nút anh em kế cận nút xét có số lượng khóa vừa đủ số lượng tối thiểu – Chọn nút anh em kế cận hợp nút anh em với nút xét với khóa tương ứng nút cha – Nếu nút cha trở nên thiếu khóa, lặp lại q trình 24 Trường hợp: • Nút anh em kế cận cịn đủ khóa để bổ sung 25 Trường hợp: • Nút xét nút anh em kế cận q khóa 26 VD – Xố khố B-Tree cấp • Ví dụ ta có sau: Xố nút 26 ta làm sao: 27 VD – Xoá khoá B-Tree cấp • Dùng 28 để thay 28 VD – Xố khố B-Tree cấp • Xố khóa 22 dùng 24 thay thế, thiếu nút 29 VD – Xố khố B-Tree cấp • Xố khóa 22 dùng 24 thay thế, thiếu node lá: – 26 đem xuống node thiếu, 28 đem lên thay 26 30 VD – Xoá khoá B-Tree cấp • Xố khố 18, thay 31 VD – Xoá khoá B-Tree cấp 32 Luyện tập • Cho B-tree bậc gồm khóa sau (chèn vào theo thứ tự): 3, 7, 9, 23, 45, 1, 5, 14, 25, 24, 13, 11, 8, 19, 4, 31, 35, 56 • Thêm khóa: 2, 6, 12, 10, 11 • Xóa khóa: 4, 5, 7, 3, 14 33 .. .B-Tree • Giới thiệu • Định nghĩa B-Tree • Các phép tốn B-Tree Giới thiệu • Cây 2-3 -4 ví dụ nhiều nhánh, nhiều nhánh node có nhiều hai node nhiều mục liệu • Một loại khác nhiều nhánh B-tree, ... tìm thấy khố, việc tìm kiếm thất bại ,C , Thêm nút vào B-Tree • Tính chất B-Tree: node có số khóa • Thêm nút có khóa X vào B-Tree – Thêm X vào nút – Sau thêm, nút đầy: • Tách nút làm đơi • Chuyển... iv) Các khóa tăng dần từ trái sang phải v) Các nút nằm mức Định nghĩa B-Tree Ví dụ: B-tree bậc có mức Ưu điểm B-Tree • B-Tree dạng cân bằng, phù hợp với việc lưu trữ đĩa • B_Tree tiêu tốn số

Ngày đăng: 11/05/2021, 04:15

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