有没有办法通过LEMON Graph库中的Map值获取节点?

时间:2018-02-12 16:35:55

标签: c++ lemon-graph-library

我正在使用 LEMON图表库,并想知道是否有一种有效的方法可以通过其相应的{{{}来接收ListDigraph::Node x 1}}?

我在考虑类似的事情:

ListDigraph::NodeMap

LEMON中是否存在类似的内容?如果除了编写我自己的地图之外别无他法,我该如何返回密钥(Node)?我可以迭代地图的基础值吗?

2 个答案:

答案 0 :(得分:0)

不幸的是,无法从Lemon NodeMap获取密钥集(或相应的节点),请参阅NodeMap reference

也无法迭代地图。克服这个问题的最好方法是在自己编写时编写自己的地图,或使用其他辅助地图(或类似的容器)。

答案 1 :(得分:0)

据我所知,开箱即用的柠檬是不可能的。特别是,因为"<input type='checkbox' onchange='self.location.href=\"index.jsp?b=" + brand.getIdbrand() + "\"'>" 不一定是一对一的。没有什么能阻止你给所有节点赋值“红色”,因此向后查询不会有唯一正确的结果。

您也无法直接迭代NodeMap的内容。但是,您可以迭代图中的所有节点,并询问相应的值:

NodeMap

或者,正如您所提到的,您可以定义自己的地图:

for (lemon::ListDigraph::NodeIt n(lg); n != lemon::INVALID; ++n) {
    if (nodeColor[n] == "red) {
        // do something
    }
}