我必须生成简单的无向图,以在其上测试我的Kruskal算法。
我有一个用于所有连接的结构,如下所示:

    struct connection
    {
       node1;
       node2;
       edge_value;
    }


现在,我需要生成大量的这些连接,以测试Kruskal的连接。 Kruskal的算法并不比这一代人困难,也许是因为这是我第一次面对Graphs。

最佳答案

您的数据结构还可以,因为您想运行kruskal算法!

我假设您已经有了kruskal实现(使用此数据结构,您唯一需要做的就是设置一个向量,然后使用适当的功能对该向量进行排序,最后遍历该向量,计算成本为n log(n))。

如果您需要测试算法,我建议您浏览uva的网站,从头开始,我可以向您介绍这个问题:http://uva.onlinejudge.org/external/113/11354.html您可以使用3个示例案例来测试您的kruskal实现是否有效。

关于c++ - 如何在C++中生成无向图?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9625754/

10-13 06:29