h = []
heapq.heappush(h,(10, 1200))
heapq.heappush(h,(20, 31))
heapq.heappush(h,(5, 1))
voglio mantenere una dimensione heap fissa di dire 3, così quando ho prossima ho heapq.heappush(h,(3,15))
, chiave con il valore 20 viene eliminato e non mi resta con i valori 3,5 e 10. Qualche idea come?Mantenere un mucchio dimensione fissa -python
Si suppone che questo sia un heap massimo o un heap minimo? Se si tratta di un heap minimo, avrai problemi, dal momento che hai bisogno di un'operazione remove-max per questo. – user2357112
Voglio un heap massimo. Allora fai se c'è una funzione minima di rimozione predefinita. – user2991421
remove-min è 'heapq.heappop'. – user2357112