下面是我们的题目,如何得出下图的最小生成树?
1.prim算法(适用于计算稠网)
思想其实很简单:随便找一个点作为起始点(因为每个点都需要经过所以找那个点都一样),然后找到和这个点相连接的边中权值最小的,连起来,然后再从,这两个点出发找和他们连接的边,同样是找最小的(两个点所对应的除它们连线外的所有边中最小的),然后连起来,得到三个点,再找三个点连接边中权值最下的。。。。等找到6个点就完成了。
一下为代码:
运行结果为五个数据,每个数据据减一就是他要连接的下一个点。
2.Kruskal(克鲁斯卡尔算法)
克鲁斯卡尔算法:将所有边的权值按从小到大的顺序进行排序,然后从上到下进行选取(第一个选取到的边为权值最小的边ÿ