Cho một tập gia đình các tập con của một vũ trụ . Hãy và chúng tôi muốn trả lời là .
Tôi đang tìm kiếm một cấu trúc dữ liệu cho phép tôi nhanh chóng trả lời điều này. Ứng dụng của tôi là từ lý thuyết đồ thị nơi tôi muốn xem nếu xóa một đỉnh và vùng lân cận của nó để lại bất kỳ đỉnh bị cô lập nào, và cho mỗi danh sách đỉnh tất cả các đỉnh bị cô lập mà nó để lại.
Tôi muốn tạo ra các poset hoàn chỉnh hoặc cuối cùng là một bảng lưu trữ đúng sai cho biết chính xác bộ nào là tập hợp con của nhau.
Hãy , và , giả sử
Chúng ta có thể tạo ma trận ngăn chặn (đồ thị lưỡng cực) trong thời gian và sau đó có thể tạo bảng của tất cả so sánh trong thời gian cho mỗi bộ , lặp qua tất cả yếu tố của tất cả các bộ khác và đánh dấu các bộ như không phải là một tập hợp con của nếu họ nguyên tố này không có trong . Trong tổng thời gian .
Chúng ta có thể làm bất cứ điều gì nhanh hơn? Cụ thể, thời gian có khả thi hay không?
Tôi tìm thấy một số bài viết liên quan:
Một thuật toán bậc hai đơn giản để tính toán thứ tự một phần của tập hợp con (1995) đưa ra thuật toán .
Thứ tự một phần của tập hợp con: Tính toán và kết hợp cải thiện đôi chút ở trên nhưng cũng cho rằng bài báo trên giải quyết vấn đề trong thời gian trong đó là số tập hợp tối đa chia sẻ một phần tử chung, nhưng tôi không thể hiểu kết quả này.
Trong bài viết Giữa và các tác giả chỉ ra cách trong biểu đồ tìm các thành phần được kết nối sau khi xóa vùng lân cận kín của một đỉnh bằng cách sử dụng phép nhân ma trận. Điều này có thể được sử dụng để tính toán vị trí bao gồm tập hợp bằng cách tìm tất cả các thành phần là singletons với thời gian chạy là .
Ngoài ra thảo luận diễn đàn này có liên quan: cách nhanh nhất để kiểm tra bao gồm thiết lập là gì? trong đó hàm ý giới hạn dưới là .