Связанные компоненты или обратный поиск с помощью Boost Graph Library

Можно ли бежать connected_components() против двунаправленного графа (построенный с ::boost::bidirectionalS) в лвл? Я получаю нарушение сегментации при запуске чего-то подобного с графиком, построенным таким образом:

int num_comp = connected_components(g,
make_iterator_property_map(component.begin(), get(vertex_index, g)));

Это неудивительно, поскольку в документации указано, что его можно использовать только против неориентированного графа.

В противном случае возможно ли использовать один из алгоритмов поиска (BFS или DFS) в обратный направление? Например, я хотел бы начать свой поиск с конечной вершины (без исходящих ребер) и работать в обратном направлении.

Возможно, я тоже задаю неправильный вопрос: я пытаюсь найти подграф всех вершин, имеющих путь к данной конечной вершине. Есть ли более прямой способ сделать это с BGL?

Конечно, я могу все это делать самостоятельно, но я бы предпочел использовать средства BGL, если смогу.

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]