【发布时间】:2014-07-12 23:16:16
【问题描述】:
我有一个系统,我需要表示类似于路径的东西,路径只是提供到达特定节点的路线。可以有多个路径可用于到达同一节点。
我目前正在使用节点向量表示路径,我需要执行诸如 replaceSubpath、containsNode、containsSubPath、appendNode、getRootNode、getLeafNode 之类的操作(与对字符串所做的操作非常相似)。所有这些操作都可以在向量上完成,但大路径的性能可能会很糟糕。
我正在考虑使用 boost::graph 但没有经验,我想知道对于这些和类似操作,使用 boost::graph 是否是正确/良好的数据结构?
任何关于使用其他数据结构的建议也会有所帮助,我知道我可以通过将节点的(多)映射保持到迭代器等来优化我的向量解决方案。
【问题讨论】:
-
boost::graph去吧。 -
你能给我一些关于如何使用提升图来执行 findSubPath、replaceSubPath 之类的建议吗??
-
您不想将其表示为单个字符串的原因是?
-
或者,你知道,
boost::path? -
@MooingDuck 我没听说过 boost::path。可以链接到它。我找到的唯一路径是 boost::filesytem::path 我认为这里不太适合。
标签: c++ boost data-structures stdvector boost-graph