0

我有一个略大于 4GB 的图表,比我在 32 位机器上可以处理的还要大。

我想编写一个程序来计算连接(直接和间接)到图中特定节点的顶点数。

如果我不能一次将整个图表加载到内存/交换中,我该怎么办?

编辑:这是一个有向图,我实际上想计算我可以(在正确方向上)到特定顶点的顶点数。

4

1 回答 1

0

这实际上取决于您如何存储图表。在许多情况下,您不必加载整个图表。例如,如果您的图形存储为邻接矩阵,您只需要提取一列/行,并且有很多方法可以有效地执行此操作,具体取决于矩阵的存储方式(例如固定长度的单元格或 HDF 文件) . 如果您的图表存储为带有指向其他节点的指针的节点列表,您有时可以只提取该节点的数据。底线,这取决于你如何存储你的图表,但它在许多表示下都是可行的。关键是必须将表示保存到磁盘上,这样就不必一次全部加载。

于 2012-09-21T11:53:16.503 回答