1. Trang chủ
  2. » Tất cả

Cấu trúc dữ liệu trong bộ nhớ ngoài ch04 b trees

46 2 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 46
Dung lượng 230,5 KB

Nội dung

B trees B Caây Ch 4 B Trees Caáu truùc döõ lieäu trong boä nhôù ngoaøi B caây toång quaùt hoaù caây tìm kieám nhò phaân “Heä soá phaân nhaùnh” (branching factor) B caây laø caây tìm kieám caân baèng ñ[.]

B-Cây 22.9.2004 Ch 4: B-Trees Cấu trúc liệu nhớ ° ° ° B-cây tổng quát hoá tìm kiếm nhị phân – “Hệ số phân nhánh” (branching factor) B-cây tìm kiếm cân thiết kế để làm việc hữu hiệu nhớ (đóa cứng) – Bộ nhớ (main memory) – Bộ nhớ (secondary storage) ° Disk – Track – Page Thời gian chạy gồm – số truy cập vào đóa – thời gian CPU 22.9.2004 Ch 4: B-Trees Truy cập đóa ° ° Một nút B-cây thường chiếm nguyên disk page Hệ số phân nhánh tùy thuộc vào tỉ lệ kích thước khóa kích thước disk page 22.9.2004 Ch 4: B-Trees Các thao tác lên đóa ° ° Cho x trỏ đến đối tượng (ví dụ: nút B-cây) Đối tượng x có nhiều trường – Nếu x nằm nhớ chính, truy cập trường x thường lệ, ví dụ key[x], leaf [x], – Nếu x nằm đóa dùng DISK-READ(x) để đọc vào nhớ – Nếu x thay đổi dùng DISK-WRITE(x) để trữ vào đóa x  trỏ đến đối tượng Cách làm việc tiêu biểu với đối tượng x DISK-READ(x) thao tác truy cập/thay đổi trường x DISK-WRITE(x) thao tác không thay đổi trường x 22.9.2004 Ch 4: B-Trees Hệ số phân nhánh ° Ví dụ B-cây mà: – nút có 1000 khóa, tức B-cây có hệ số phân nhánh 1001 root[T] nút 1000 khóa 1000 khóa 1001 nhánh 1000 1001 1000 22.9.2004 1000 1000 1001 1001 1000 1000 Ch 4: B-Trees 1001 nút 1.001.000 khóa 1.002.001 nút 1.002.001.000 khóa Định nghóa B-cây ° Một B-cây T có gốc, mà gốc root[T], có tính chất sau – Mỗi nút x có trường sau ° n[x], số lượng khóa chứa nút x ° khóa: có n[x] khóa, xếp theo thứ tự không giảm, tức key1[x]  key2[x]    keyn[x ][x] leaf [x], có trị bool TRUE x FALSE x nút – Mỗi nút x chứa n[x]  trỏ c1 [x], c2 [x],…, cn[x ]+1[x] đến nút ° 22.9.2004 Ch 4: B-Trees Định nghóa B-cây (tiếp) Mô hình nút B-caây ] [1 x [x] i i y y ke ke  x N W  ci [x]  22.9.2004 Ch 4: B-Trees Định nghóa B-cây (tiếp) – Nếu ki khóa trữ có gốc ci [x] • k  key [x]  k  key [x]    k 1 2 n[x ]  keyn[x ][x]  kn[x ]+1 ] [1 x [x] i i y y ke ke  N W  x ci [x] ki 22.9.2004 Ch 4: B-Trees Định nghóa B-cây (tiếp) – Tất có độ sâu, chiều cao h – Có số nguyên t  gọi bậc tối thiểu cho ° Mọi nút nút gốc phải có t  khóa Nếu   nút gốc phải có khóa ° Mổi nút chứa tối đa 2t  khóa Một nút đầy chứa 2t  khóa 22.9.2004 Ch 4: B-Trees Chiều cao B-cây Định lý Nếu n  B-cây T với n khóa, chiều cao h, bậc tối thiểu t  n 1 có h log t Chứng minh Có tối thiểu nút độ sâu 1, 2t nút độ sâu 2, , 2t h  nút độ sâu h Vậy số khóa tối thiểu h i n 1  (t  1) 2t i 1 th  1  2(t  1) t1 2t h  n 1 h t  Do 22.9.2004 , từ suy định lý Ch 4: B-Trees 10 .. .Cấu trúc liệu nhớ ° ° ° B- cây tổng quát hoá tìm kiếm nhị phân – “Hệ số phân nhánh” (branching factor) B- cây tìm kiếm cân thiết kế để làm việc hữu hiệu nhớ (đóa cứng) – B? ?? nhớ (main... 4: B- Trees t1 t  t  11 Các thao tác lên B- cây ° ° Các thao tác lên B- cây: – B- TREE-SEARCH – B- TREE-CREATE – B- TREE-INSERT – B- TREE-DELETE Trong thủ tục ta quy ước: – Gốc B- cây luôn nằm nhớ. .. nhớ (main memory) – B? ?? nhớ (secondary storage) ° Disk – Track – Page Thời gian chạy gồm – số truy cập vào đóa – thời gian CPU 22.9.2004 Ch 4: B- Trees Truy cập đóa ° ° Một nút B- cây thường chiếm

Ngày đăng: 25/03/2023, 08:37

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

TÀI LIỆU LIÊN QUAN