Реализация двоичной кучи на C ++ - PullRequest
7 голосов
/ 13 апреля 2009

Мне нужна минимальная куча, реализованная в виде двоичного дерева. Действительно быстрый доступ к минимальному узлу и сортировка вставки.

Есть ли хорошая реализация в stl или boost, которую кто-нибудь может указать мне тоже?

Ответы [ 3 ]

17 голосов
/ 13 апреля 2009

Я думаю std :: priority_queue - это то, что вы ищете.

5 голосов
/ 13 апреля 2009

См. Стандартный алгоритм C ++ make_heap ().

0 голосов
/ 13 апреля 2009

STL не имеет концепции (двоичных) деревьев, но есть методы, которые облегчают поддержание свойств кучи в наборе данных, такие как std :: make_heap, std :: sort_heap, std :: push_heap и так далее.

...