博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
图算法-Prime
阅读量:4567 次
发布时间:2019-06-08

本文共 1225 字,大约阅读时间需要 4 分钟。

主要思想:利用了贪心属性,它有最优子结构,即它的导出子图也是最小生成树。

#include 
using namespace std;const int nmax= 100;int e[nmax][nmax];const int inf = 1 << 20;int MST_Prime(int e[][nmax], int n) { int book[nmax], dis[nmax],sum=0; memset(book, 0, sizeof(book)); for (int i = 1; i <= n; i++) dis[i] = inf; int flag = 1; dis[flag] = 0; book[flag] = 1; int t = n-1; while (t--) { for (int i = 1; i <= n; i++) if (book[i] == 0 && e[flag][i] < dis[i]) dis[i] = e[flag][i]; int tmp = inf; for(int i=1;i<=n;i++) if (book[i]==0&&dis[i] < tmp) { tmp = dis[i]; flag = i; } sum += tmp; book[flag] = 1; } return sum;}int main() { int V, E; while (cin >> V >> E) { for(int i=0;i<=V;i++) for (int j = 0; j <= V; j++) { if (i == j)e[i][j] = 0; else e[i][j] = inf; } for (int i = 0; i < E; i++) { int x, y, z; cin >> x >> y >> z; e[x][y] = z; e[y][x] = z; } cout << MST_Prime(e, V) << endl; }}

 

转载于:https://www.cnblogs.com/IKnowYou0/p/6062963.html

你可能感兴趣的文章
使用navigator.userAgent.toLowerCase()判断移动端类型
查看>>
REMODE+ORBSLAM运行配置(2) REMODE和编译后的ORB ros工程利用节点实现通讯
查看>>
C#的基本语法
查看>>
CCCC2017大区赛补完
查看>>
深度学习UFLDL老教程笔记1 稀疏自编码器Ⅱ
查看>>
Windows常用命令集
查看>>
luogu P2073 送花
查看>>
CPU占用率呈正弦实现,及实时输出进程和线程的CPU占用率
查看>>
java学习第八天
查看>>
判断是否有人在操作某张表,并获取…
查看>>
第四周仿真与计算作业
查看>>
.net中WebService的使用实例
查看>>
editplus的配色
查看>>
最近3年股息率最高排名
查看>>
ural 1091. Tmutarakan Exams 和 codeforces 295 B. Greg and Graph
查看>>
IO流(四)
查看>>
Java 序列化Serializable
查看>>
Spring在web请求中定义编码(org.springframework.web.filter.CharacterEncodingFilter)
查看>>
[数据库基础]——编码标准之结构
查看>>
c++模版函数
查看>>