您的位置:首页 > 其它

003-普利姆算法求解最小生成树的简单实例

2017-03-15 16:03 405 查看

普利姆Prim算法求解最短路径的简单实例

给定6个节点,这6的节点中间有十条相连的通路,有的是直接相连,有的则是间接相连。如图所示:



图中的6个节点被分别标注为{P1,P2,P3,P4,P5,P6},它们之间的连接也有各自的权重,要想求出最小生成树,如果使用普利姆算法的话,应该如下操作:
1.我们设置lowMoney【i】为“以i为终点的时候最小的权重,也就是最小的花费”,当它等于0的时候代表该点已经被选中;

2.destination【i】为对应上面最小权重的时候,是谁在与之对应,也就是说谁将作为起点与之对应;

3.“*”可以看做无穷大,也就是没有直接的通路;

1.首先将P1看作基本点,这个时候就有



lowMoney【1】 = 0;
 destina【1】 = 0;
lowMoney【2】 = 6;
destina【2】 = 1;
lowMoney【3】 = 5;
destina【3】
= 1;
lowMoney【4】 = 1;
destina【4】
= 1;

lowMoney【5】
= * ;
destina【5】
= 4;

lowMoney【6】
= * ; 
destina【6】
= 4;
我们不难看出,除了自身以外,lowMoney【4】
为最小值,所以我们将它选定, 选定之后设置为lowMoney【4】 = 0;
则就会有:



lowMoney【1】 = 0;
 destina【1】 = 0;
lowMoney【2】 =
5;
destina【2】 =
4;
lowMoney【3】 = 5;
destina【3】 = 1;
lowMoney【4】 =0;
destina【4】 =
0;

lowMoney【5】 =6 ;
destina【5】 = 4;

lowMoney【6】 =
4 ;
destina【6】 = 4;
我们不难看出,除了自身以外,lowMoney【6】 为最小值,所以我们将它选定,选定之后设置为lowMoney【6】 = 0;
则就会有:



lowMoney【1】 = 0;
 destina【1】 = 0;
lowMoney【2】 =5;
destina【2】 =
4;
lowMoney【3】 =2;
destina【3】 =
6;
lowMoney【4】 =0;
destina【4】 =
0;

lowMoney【5】 =6 ;
destina【5】 = 4;

lowMoney【6】 =0 ;
destina【6】 =
0;
我们不难看出,除了自身以外,lowMoney【3】 为最小值,所以我们将它选定,选定之后设置为lowMoney【3】 = 0;
则就会有:



lowMoney【1】 = 0;
 destina【1】 = 0;
lowMoney【2】 =5;
destina【2】 =
4;
lowMoney【3】 = 0;
destina【3】 =0;
lowMoney【4】 =0;
destina【4】 =
0;

lowMoney【5】 =6 ; 
destina【5】 = 4;

lowMoney【6】 =0 ; 
destina【6】 =
0;
我们不难看出,除了自身以外,lowMoney【2】 为最小值,所以我们将它选定,选定之后设置为lowMoney【2】 = 0;
则就会有:



lowMoney【1】 = 0;
 destina【1】 = 0;
lowMoney【2】 =0;
 destina【2】 =
0;
lowMoney【3】 = 0;
 destina【3】 =0;
lowMoney【4】 =0;
 destina【4】 =
0;

lowMoney【5】 =6 ;
 destina【5】 = 4;

lowMoney【6】 =0 ; 
destina【6】 =
0;
我们不难看出,除了自身以外,lowMoney【5】 为最小值,所以我们将它选定,选定之后设置为lowMoney【5】 = 0;
则就会有:



lowMoney【1】 = 0;
 destina【1】 = 0;
lowMoney【2】 =0; 
destina【2】 =
0;
lowMoney【3】 = 0;
 destina【3】 =0;
lowMoney【4】 =0; 
destina【4】 =
0;

lowMoney【5】 =0 ;
 destina【5】 =
0;

lowMoney【6】 =0 ;
 destina【6】 =
0;
至此,我们已经找到了最小生成树,这个算法就算是结束了,所以呢,最后的最小权值也就是最小花费就是(1+2+3+4+5=15),这就是普利姆算法求解最小生成树的全部过程。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: