Топологическая сортировка DAG в C ++;структура данных для хранения отсортированного списка? - PullRequest
0 голосов
/ 08 декабря 2018

Я реализовал топологическую сортировку ориентированного ациклического графа в C ++, который выводит топологический отсортированный список.

Я вижу некоторые реализации, где отсортированный список хранится в std::stack, а некоторые в std::vector.Я не уверен, какая или другая структура данных будет наиболее подходящей для моего случая.По сути, мне просто нужно перебрать этот отсортированный список и извлечь элементы, хранящиеся сверху вниз.Список не изменяется в процессе извлечения.

Использование std::vector представляется бесполезным с точки зрения сложности, поскольку я буду перераспределять вектор каждый раз, когда в элемент добавляется новый элемент.список.Этот список может стать довольно массовым.

Кажется, что я не могу перебрать std::stack в соответствии с Как пройти через стек в C ++? .

Есть ли другой вариант, который был бы более подходящим для того, что я хочу сделать?

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