C ++中巨大图的数据结构[关闭]

Posted

技术标签:

【中文标题】C ++中巨大图的数据结构[关闭]【英文标题】:Data structures for huge graphs in C++ [closed] 【发布时间】:2010-09-23 19:39:43 【问题描述】:

我想了解如何实现大图,以便图算法在大图上运行得更快。

【问题讨论】:

获得更具体的信息。什么样的图算法?你在说什么尺寸? 这是一个非常模糊的问题。我假设您正在寻找表示连接性的方法,但您可能必须指定“巨大”的含义以及您感兴趣的图形算法类型。并非所有表示都适用于所有算法。 你指的是boost图形库吗?正如大卫所说,请列出更多细节...... 【参考方案1】:

也许你应该看看一个著名的图形库,例如boost graph library

【讨论】:

我认为这不能回答以“我想了解”开头的问题。 @doc BGL 有据可查,如果他想了解它们最终是如何实现的,查看源代码是没有问题的。 如果有人问你汽车发动机的工作原理,你会告诉他什么?看看著名的汽车实施,例如 BMW Z3...?【参考方案2】:

图表示的核心思想是incidence matrix。其余的取决于你需要什么。例如,以快速查找邻居为导向的可能解决方案是adjacency matrices。

【讨论】:

矩阵适用于小而密集的图,但不确定它们是否适用于大图。我想你可以使用稀疏矩阵表示。首先存储边缘可能更容易。 @High Performance Mark:是的,您可以使用稀疏矩阵或其他类型的压缩。这就是为什么我说这取决于他需要什么。

以上是关于C ++中巨大图的数据结构[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

C ++中的散点图[关闭]

向量中的结构中的C ++结构[关闭]

使用 qt 为预构建的 c 程序构建 GUI [关闭]

将结构从 C++ 调用到 C [关闭]

超高性能 C/C++ 哈希映射(表、字典)[关闭]

超详细C语言版数据结构:图的深度优先遍历(推荐收藏)