在LEMON图形库中查找边的节点

3
假设我有一条边,如何轻松找到它连接的两个节点?LEMON 的文档非常稀少,我找不到相关信息。
2个回答

2
你可以使用源节点和目标节点来查找连接边的节点,其工作方式如下所示。
ListDigraph graph;
ListDigraph::Arc edge;
ListDigraph::Node a1,a2;
a1 = graph.source(edge);
a2 = graph.target(edge);

谢谢!我以为边缘本身可以告诉它的端点,但事实证明我需要图形。 - szali

0
如果有其他人想知道如何在无向图中实现这一点(其中“边”应该是指无向图,而不是有向图中的“弧”),则相应的sourcetarget方法分别为uv。列出无向图G所有边端点的代码片段如下:
for(ListGraph::EdgeIt edge(G); edge != INVALID; ++edge) 
    std::cout << G.id(G.u(edge)) << " -- " << G.id(G.v(edge)) << endl;

请查看LEMON文档相关部分

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接