Prim 求 MST| INIT: cost[][]耗费矩阵(inf为无穷大);

| Prim MST
| INIT: cost[][] 耗费矩阵 (inf 为无穷大 );
| CALL: prim(cost, n); 返回 -1 代表原图不连通 ;
\*==================================================*/
#define typec int // type of cost
const typec inf = 0x3f3f3f3f; // max of cost
int vis[V]; typec lowc[V];
typec prim(typec cost[][V], int n) // vertex: 0 ~ n-1
{
int i, j, p;
typec minc, res = 0;
memset(vis, 0, sizeof (vis));
vis[0] = 1;
for (i=1; i<n; i++) lowc[i] = cost[0][i];
for (i=1; i<n; i++) {
minc = inf; p = -1;
for (j=0; j<n; j++)
if (0 == vis[j] && minc > lowc[j]) {
minc = lowc[j]; p = j;
}
if (inf == minc) return -1; // 原图不连通
res += minc; vis[p] = 1;
for (j=0; j<n; j++)
if (0 == vis[j] && lowc[j] > cost[p][j])
lowc[j] = cost[p][j];
}
return res;
}

相关推荐
摸个小yu4 分钟前
【力扣LeetCode热题h100】链表、二叉树
算法·leetcode·链表
汀、人工智能11 分钟前
[特殊字符] 第93课:太平洋大西洋水流问题
数据结构·算法·数据库架构·图论·bfs·太平洋大西洋水流问题
ZPC821022 分钟前
rviz2 仿真控制器与真实机器人切换
人工智能·算法·机器人
澈20728 分钟前
双指针,数组去重
c++·算法
小辉同志1 小时前
207. 课程表
c++·算法·力扣·图论
CheerWWW1 小时前
深入理解计算机系统——位运算、树状数组
笔记·学习·算法·计算机系统
锅挤2 小时前
数据结构复习(第一章):绪论
数据结构·算法
skywalker_112 小时前
力扣hot100-5(盛最多水的容器),6(三数之和)
算法·leetcode·职场和发展
汀、人工智能2 小时前
[特殊字符] 第95课:冗余连接
数据结构·算法·链表·数据库架构··冗余连接
生信研究猿2 小时前
leetcode 226.翻转二叉树
算法·leetcode·职场和发展