最小生成树(prim算法)
#include<iostream> //最小生成树。
#include<cstring>
using namespace std;
int arr[303][303]; //链接矩阵。从一开始。 要想推导出路径来也是可以的。
int flag[303]; //用于标记在不在vnew中。
int lowcost[303];
int N;
const int inf=1e9+10;
int main()
{
cin>>N;
for(int i=1;i<=N;i++)
for(int j=1;j<=N;j++)
{
int abc;
cin>>abc;
if(abc==0)
arr[i][j]=inf;
else
arr[i][j]=abc;
}
memset(flag,0,sizeof(flag));
flag[1]=1;
for(int i=1;i<=100;i++)
lowcost[i]=100;
for(int i=1;i<=N;i++)
lowcost[i]=arr[1][i];
int sum=0;
for(int i=2;i<=N;i++) //仅仅只是进行了n-1次。那自然也是不能浪费。
{
int themin=inf;
int k;
for(int j=1;j<=N;j++)
{
if(flag[j]==0&&lowcost[j]<themin)
{
themin=lowcost[j]; //找出最小的来。
k=j;
}
}
sum=sum+themin;
flag[k]=1; //都是针对于这一个k的,所以说k还是很关键的。
for(int j=1;j<=N;j++)
if(arr[k][j]<lowcost[j])
lowcost[j]=arr[k][j];
}
cout<<"最小生成树的长度为:"<<sum<<endl;
return 0;
}
最小生成树(prim算法)相关推荐
- [Java学习] 最小生成树——Prim算法
文章目录 最小生成树 Prim算法流程 应用实例 求最小生成树 最小生成树 百度百科上对于最小生成树的定义是这样的:一个有 n 个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有 n 个结 ...
- 最小生成树Prim算法Java版
最小生成树Prim算法Java版 算法描述: 在一个加权连通图中,顶点集合V,边集合为E 任意选出一个点作为初始顶点,标记为visit,计算所有与之相连接的点的距离,选择距离最短的,标记visit. ...
- D-OJ刷题日记:使用邻接矩阵实现最小生成树Prim算法 题目编号:1135
理解: [理解prim算法本质--让一棵小树逐渐长大] Prim算法:又称为加边法,即每次选择最小权值的边加入到生成树中,然后再更新权值,如此反复,保证每次最优来达到最优解. Prim算法生成树用的是 ...
- 西南科技大学OJ题 求最小生成树(Prim算法)1075
求最小生成树(Prim算法) 1000(ms) 10000(kb) 2256 / 4495 Tags: 生成树 求出给定无向带权图的最小生成树.图的定点为字符型,权值为不超过100的整形.在提示中已经 ...
- 最小生成树-Prim算法详解(含全部代码)
目录 适用条件 测试所用图 算法详解 Prim算法代码 全部代码 实验结果 适用条件 加权连通图 测试所用图 所用原图及生成过程 其中,(a) 为原图,圆圈里面是节点的名称,边上的数字是边的权值.由实 ...
- 最小生成树 - Prim算法
最小生成树 - Prim算法 思路: 采用 贪心策略,每次选取连通块外延的最短边和对应的点放入连通块,再更新新的连通块外延的边.连通部分逐渐扩大,最后将整个图连通起来,并且边长之和最小. 时间复杂度: ...
- 【数据结构】最小生成树 Prim算法 Kruskal算法
最小生成树应用场景: 假设以下场景,有一块木板,板上钉上一些钉子,这些钉子可以由一些细绳连接起来.假设每个钉子可以通过一根或者多根细绳连接起来,那么一定存在这样得情况,即用最少的细绳把所有的钉子连接起 ...
- 生成树的概念,最小生成树Prim算法 Kruskal算法
求解最小生成树可以用Prim算法 Kruskal算法
- POJ2728 Desert King ——01分数规划Dinkelbach迭代法+最小生成树prim算法
首先,纪念我用Linux系统AC的第一题- 安装这个万恶的NOI Linux系统费了6小时的时间,不过好在最后终于装上了,但是因为我安装的Linux系统比较烂,还遭到了小花儿和js的鄙视,唉,本人 ...
- 图论(十)最小生成树-Prim算法
前面说过,Prim算法是从顶点着手构建最小生成树的.应该说,Prim算法比Kruskal更简单.我们还是以前面的乡镇假设光纤网络为例: Prim算法工作步骤 (1) 构建全部顶点集V,选取初始顶点,加 ...
最新文章
- 点云数据格式 数据集笔记
- 【luogu 2709 / BZOJ 3781】小B的询问
- python滚动文本框_调整滚动Tkinter文本框的大小
- Maven实战 | dependencies与dependencyManagement
- 经典html,经典 HTML
- CCF201912-2 回收站选址(100分)【序列处理】
- SecureCRT的Backspace显示为^H的解决办法
- 乌班图vim怎么编译c语言,在Ubuntu上利用vim进行程序编写及运行
- CCF专区推荐重点SCI期刊征稿中~
- 从“卡脖子”到人有我优,数字孪生盾构机施工流程可视化
- visio2016 数据库模型图_数据库第七章--NoSQL数据库
- 海康威视摄像头+OpenCV+VS2017 图像处理小结(一)
- python单元测试用例_Python单元测试与测试用例简析
- AD画PCB板子 基本步骤
- 搭建git服务器 web项目,git服务器搭建web项目
- 《大明王朝的七张面孔》——海瑞
- 显示器固件测试软件,【安全工具】固件可视化分析-工具篇
- 京东阿里都已入局 顺丰在即时配送的胜算有多大?
- css 字体颜色 样式大全
- AI顶级期刊 IEEE T-PAMI 2020最新论文解读 | Deep Partial Multi-View Learning