Для чего вы бы использовали модуль Python heapq в реальной жизни?

Прочитав Гуидо. Сортировав миллион 32-битных целых чисел в 2 МБ ОЗУ с помощью Python , я обнаружил модуль heapq , но концепция для меня довольно абстрактна.

Одна из причин заключается в том, что я не совсем понимаю концепцию кучи, но я понимаю, как Гвидо ее использовал.

Теперь, помимо его сумасшедшего примера, для чего бы вы использовали модуль heapq ?

Должен ли он всегда быть связан с сортировкой или минимальным значением? Вы используете это только потому, что это быстрее, чем другие подходы? Или вы можете делать действительно элегантные вещи, без которых вы не можете обойтись?

13
задан Raymond Hettinger 18 June 2017 в 06:01
поделиться