Результаты поиска по запросу "min-heap"

1 ответ

Я думаю, что это лучшее решение. На самом деле он требует меньше кода и, вероятно, быстрее, поскольку вы используете встроенный тип кортежа вместо определения своего собственного класса.

ел бы сохранить набор объектов в куче мин, определив пользовательскую функцию сравнения. Я вижу, что есть модуль heapq, доступный как часть дистрибутива Python. Есть ли способ использовать пользовательский компаратор с этим модулем? Если нет, то ...

0 ответов

Да, это зависит от реализации. Их узел кучи содержит значение индекса. Это квалифицируется как вторичная структура данных, которая отслеживает индекс и создает дополнительную нагрузку на клиента для разыменования узла, чтобы получить их фактические данные. Но это работает хорошо. Бинарная куча всегда сбалансирована, но она не упорядочена для эффективного поиска, поэтому любая реализация, которая не поддерживает этот индекс, делает изменение приоритета или удаление произвольных узлов довольно дорогостоящим.

спользовании алгоритма min / max-heap приоритеты могут меняться. Одним из способов справиться с этим является удаление и вставка элемента для обновления порядка очереди. Для очередей с приоритетом, реализованных с использованием массивов, это ...

1 ответ

Максимальное значение Pop от Python heapq. Есть ли в Python максимальная куча? [Дубликат]

Possible Duplicate: What do I use for a max-heap implementation in Python? Я пытаюсь каким-то образом реализовать кучу python, но для максимальной ку...

ТОП публикаций

3 ответа

Компаратор для min-heap в C ++

Я пытаюсь сделать мин-кучу1 из

1 ответ

Максимальное значение Pop от Python heapq. Есть ли в Python максимальная куча? [Дубликат]

3 ответа

Компаратор для min-heap в C ++

Я пытаюсь сделать мин-кучу1 изlongв C ++ с использованием STLmake_heapи т. д., но мой компаратор, кажется, не сравнивает должным образом. Вот мой текущий компаратор: struct greater1{ bool operator()(const long& a,const long& b) const{ return ...

2 ответа

Как я могу реализовать минимальную кучу f64 с помощью BinaryHeap от Rust?

Я хочу заполнить двоичную кучу числами с плавающей запятой - точнее, я бы хотел реализовать минимальную кучу.Кажется, что поплавки не поддерживают