h = []
heapq.heappush(h,(10, 1200))
heapq.heappush(h,(20, 31))
heapq.heappush(h,(5, 1))
Tôi muốn duy trì kích thước cố định là 3, vì vậy khi tôi tiếp theo có heapq.heappush(h,(3,15))
, khóa có giá trị 20 bị xóa và tôi còn lại với giá trị 3,5 và 10. Có ý tưởng nào không?Duy trì kích thước cố định heap-python
Đây có phải là một vùng tối đa hoặc một đống tối thiểu không? Nếu đó là một đống heap, bạn sẽ gặp vấn đề, vì bạn cần một thao tác remove-max cho việc này. – user2357112
Tôi muốn một heap tối đa. Sau đó, bạn có nếu có bất kỳ chức năng min loại bỏ được xác định trước. – user2991421
remove-min là 'heapq.heappop'. – user2357112