Chuyên đề cây QUẢN lý đoạn

22 13 0
Chuyên đề cây QUẢN lý đoạn

Đ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

Segment trees là một cấu trúc dữ liệu ban đầu được thiết kế cho các ứng dụng hình học. Cấu trúc này khá phức tạp và được sử dụng để trả lời nhiều loại truy vấn khó. Segment trees thường được so sánh với interval trees là một dạng cấu trúc dữ liệu khác cũng cung cấp các chức năng tương đương. Trong mục này, ta đơn giản hóa cấu trúc segment trees để giải quyết bài toán truy vấn phạm vi. Điều này làm cho cây quản lý đoạn chỉ giống với segment trees ở hình ảnh biểu diễn còn các thuộc tính và phương thức trở nên đơn giản và “yếu” hơn nhiều so với cấu trúc nguyên thủy, theo nghĩa không trả lời được những truy vấn khó như cấu trúc nguyên thủy. Trên các diễn đàn thảo luận về thuật toán, đôi khi tên gọi interval trees hoặc segment trees vẫn được dùng để gọi tên cấu trúc này. Các bài giảng thuật toán cũng chỉ dùng tên gọi interval trees và segment trees để đề cập tới hai cấu trúc dữ liệu trong hình học tính toán. Cấu trúc cây quản lý đoạn, chỉ là một hạn chế của interval trees hay segment trees trong trường hợp cụ thể. Cấu trúc cây quản lý đoạn cung cấp một cách quản lý mới thông qua các đoạn sơ cấp, ngoài ra việc cài đặt dễ dàng cũng là một ưu điểm của cấu trúc dữ liệu này. 1. Cấu trúc cây quản lý đoạn Cây quản lý đoạn là một cây nhị phân đầy đủ (full binary trees) có cấu trúc như sau: Mỗi nút quản lý một dãy các đối tượng liên tiếp, trong nút chứa thông tin tổng hợp từ các đối tượng mà nó quản lý. Nút gốc quản lý các đối tượng từ 1 tới n. Nếu một nút quản lý dãy các đối tượng từ l tới r (lr) or (l>i) or(rr) (j < l ) or ( r < i) then Exit(0); if (i r) or(l>j) or(rr) or (rj) then exit(vc); if (i r) or(l>j) or(r

Ngày đăng: 09/03/2021, 14:01

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

Tài liệu liên quan