Как перебрать все ребра в ориентированном графе и получить источник + назначение - PullRequest
1 голос
/ 06 февраля 2012

Я добавил несколько узлов и вершин в свой ориентированный граф, созданный с настройками typedef boost::adjacency_list<boost::listS, boost::vecS, boost::directedS, Node, Edge> graph;

Node содержит строку для имени узла, а Edge имеет int дляего оценка.Я пытаюсь перебрать все ребра и вывести исходные и целевые имена, а также счет для этого ребра.

Вы можете получить итератор по краям с помощью my_graph.m_edges.begin(), который можно разыменовать, чтобы получить m_source и m_target.

Как получить имена, назначенные исходному и целевому узлам, а также оценку по этому краю?

1 Ответ

1 голос
/ 11 февраля 2012

Учитывая edge_descriptor e, вы можете использовать my_graph[source(e, my_graph)].name, my_graph[target(e, my_graph)].name и my_graph[e].score для получения информации, о которой вы спрашиваете.

...