我在 Graphchi 中编写了一个最短路径代码,我想在文件中打印该代码的输出。我试图使用示例中显示的模板,但如果我使用与其他示例中相同的写入文件的方式,则会出现错误。
我被困在这里了。作为输出,我只想打印(顶点 ID,距源的最小距离)。
我怎样才能做到这一点。
以下是如何将所有顶点的值输出到控制台的示例。很容易修改它以将输出写入文件。请注意,如果您可以处理二进制文件,则 GraphChi 已经在文件中具有顶点值:.B.vout,其中 是 sizeof(VertexDataType)。
1)您需要定义一个回调函数,它将以顶点id和值作为参数
class OutputVertexCallback : public VCallback<VertexDataType> {
public:
virtual void callback(vid_t vertex_id, VertexDataType &value) {
std::cout << vertex_id << "=" << value << std::endl;
}
};
2)然后您需要按如下方式调用foreach_vertices()来获取输出:
OutputVertexCallback callback;
foreach_vertices<VertexDataType>(filename, 0, engine.num_vertices(), callback);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)