acm-最小生成树(prim)
来源:互联网 发布:淘宝网宝宝学步鞋 编辑:程序博客网 时间:2024/06/07 08:55
prim方法的具体过程及参数解释
low[] 数组存储当前顶点和其他相连顶点的权重,未相连初始化INF(无限)
visited[]数组存所有节点的访问状态
prim方法过程
随机初始化第一个访问点pos(一般选取pos = 0)
设置visited[pos]为已访问
初始化low数组存储pos顶点到其他顶点的权重(未相连初始化INF)
loop n-1: //最小生成树n个顶点需要n-1条边
将map[pos]当前行存入low[]
找出low[i]为最小值(即pos到其他相连顶点中的最小权重)
标记i为已经访问 pos =i
将map[pos]当前行中未标记的权值存入low[](map[pos]<low[i]) // 注释 0x1
end loop
注释 0x1 解释
map[pos]<low[i]的必要性
在 注释 0x1处 low[]存储的是和已访问顶点相连但未归入最小生成树的边的并集
如图 假设AD为已经访问的顶点 那么与红线相交的线会被存储进low[] 但是9>7 则bd这条线将不会存储进去,这样防止了构成回路 low[] = {AB AD DF DE }
再经过一次循环
DF会被归入最小生成树
FE会替换DE在low[]中的位置 low[] = {AB AD DF EF FG }
再经过一次循环
AB会被归入最小生成树
BE会替换FE在low[]中的位置 low[] = {AB AD DF BE FG BC }
。。。。。
0 0
- acm-最小生成树(prim)
- ACM:prim最小生成树题目汇总
- 最小生成树(prim)
- 最小生成树(Prim)
- prim(最小生成树)
- 最小生成树(prim)
- 最小生成树(Prim)
- ACM:最小生成树,kruskal && prim,并查集
- ACM日记——最小生成树.prim算法
- Prim最小生成树
- 最小生成树 prim
- 最小生成树 Prim
- 最小生成树-Prim
- Prim最小生成树
- 最小生成树 Prim
- prim最小生成树
- 最小生成树prim
- 最小生成树 prim
- 委托 匿名 Lambda的区分
- 通过反射机制获得系统字体Size【ActivityManagerNative无法调用问题】
- iOS中CoreLocation定位的代理方法不执行的解决办法。
- ListView设置滑动到底部自动加载 重复多次加载问题
- dojo 1.10 学习日记-Hello Dojo!
- acm-最小生成树(prim)
- Beautiful的用法
- UITableView全面讲解
- oracle数据库的多行函数
- C# Window编程随记——读取.txt文件内容
- MakeFile
- Eclipse内存配置
- [转]Redis 的 Sentinel
- 数据库sql语句优化方案