Tôi đang tìm kiếm triển khai PriorityQueue cũng là Set.Có triển khai hàng đợi (PriorityQueue) cũng là một Tập hợp không?
Việc triển khai compareTo
nếu các thành phần của nó không được yêu cầu phải phù hợp với việc triển khai equals
.
Có nơi nào đó triển khai cho java không?
Cập nhật: Tôi đã triển khai ngay bây giờ bằng cách sử dụng SortedSet làm bộ sưu tập nội bộ. Vì vậy, tôi chỉ phải thực hiện các phương thức còn thiếu để thỏa mãn giao diện hàng đợi. Tôi cũng quên đề cập rằng nó cũng phải là một hàng đợi bị chặn, vì vậy nó có khả năng và loại bỏ phần tử cuối cùng của bộ nếu đạt được dung lượng.
nhưng các đối tượng không được chia sẻ giữa hàng đợi và đặt ... chúng hoàn toàn không liên quan ... đây là một loại thừa kế (sai) nhiều? – dfa
@dfa Các đối tượng được chia sẻ giữa hàng đợi và tập hợp ... chỉ các tham chiếu của chúng được lưu trữ thành hai bộ ... Đề xuất của tôi giống với @Andreas_D - một giải pháp rất phổ biến được sử dụng trong bộ sưu tập của Java. Nếu Bộ sưu tập của Java dễ dàng mở rộng và tạo ra bộ sưu tập của riêng bạn thì nó sẽ không quá khó khăn ... – Petriborg
Điều đó không có ý nghĩa gì đối với tôi. Hàng đợi ưu tiên đã được sắp xếp, vì vậy bạn sẽ chỉ cần một bộ bình thường. Hơn nữa tôi nghĩ rằng trong trường hợp của tôi chi phí cho việc có hai bộ sưu tập sẽ cao, đối tượng của tôi là tương đối nhỏ, nhưng tôi có rất nhiều trong số đó. – Mauli