当前位置: 首页 > wzjs >正文

杭州网站制作专业河南制作网站

杭州网站制作专业,河南制作网站,装修房子图片三室一厅效果图,广州公共资源交易我们已经学了prim算法了,接下来我们来学一下cruskal算法,和prim算法不同的点就在于prim是不断的加结点,而cruskal是不断的加边,不断的加最小的边,我们需要把每个边的权值用结构体存起来,然后排序&#xff0…

我们已经学了prim算法了,接下来我们来学一下cruskal算法,和prim算法不同的点就在于prim是不断的加结点,而cruskal是不断的加边,不断的加最小的边,我们需要把每个边的权值用结构体存起来,然后排序,从小到大遍历边,不断的加边

如图,我们从权值最小的边开始

当我们把1,2权值为2的边加上去的话,就不符合我们要找生成树的性质了,

那我们怎么维护生成树呢?我们可以把形成生成树的这些结点都放在一个集合里,然后接下来看插入的边的两个结点是不是位于生成树集合里,如果位于生成树集合的话就不连了

OK,那么废话不多说,我们来实现一下代码吧

#include <iostream>
#include <algorithm>
using namespace std;
int n, m;
const int N = 2e5 + 10, INF = 0x3f3f3f3f;
struct node {int x;//结点1int y;//结点2int z;//权值 
}a[N];
int fa[N];
int find(int x)
{if (fa[x] == x) return x;return fa[x] = find(fa[x]);
}
void un(int x, int y)
{int px = find(x); int py = find(y);fa[px] = py;
}
bool cmp(const node& x, const node& y)
{return x.z < y.z;
}
int ret = 0;
int cnt = 0;//记录加入了几条边 
int kk()
{sort(a + 1, a + 1 + m, cmp);for (int i = 1; i <= m; i++){int x1 = a[i].x, y1 = a[i].y;int z1 = a[i].z;int fx = find(x1), fy = find(y1);if (fx != fy){ret += z1;cnt++;un(fx, fy);}}return cnt == n - 1 ? ret : INF;
}
int main()
{cin >> n >> m;for (int i = 1; i <= n; i++){fa[i] = i;}for (int i = 1; i <= m; i++){cin >> a[i].x >> a[i].y >> a[i].z;}int r = kk();if (r == INF) cout << "orz" << endl;else cout << r << endl;return 0;
}

http://www.dtcms.com/wzjs/35169.html

相关文章:

  • 用现成的php模板 怎么做网站seo和sem是什么意思啊
  • 做网站好学吗建一个网站大概需要多少钱
  • 怎么给网站做友情链接怎么做一个自己的网页
  • 一级a做片免费网站种子资源
  • 北京做网站多少钱蚌埠网络推广
  • 高端网站建设kgu百度竞价排名医院事件
  • 第一次开票网站建设怎么开怎么在百度上面打广告
  • 中国南昌网站建设百度如何注册公司网站
  • 使用局域网做网站企业qq邮箱
  • php能做手机网站吗网站seo入门基础教程
  • 网站服务合同范本高质量外链购买
  • 做购物网站学什么技术推广和竞价代运营
  • 河南省做网站的公司有哪些ip域名解析查询
  • 做门户网站那个系统好站长权重
  • 做网站可以用什么软件交换神器
  • 长春网站制作教程seo是哪个英文的缩写
  • 网站1g空间多大搜索引擎seo
  • 网站建设公司广告比百度好用的搜索软件
  • 网站开发背景论文长沙网站关键词排名推广公司
  • 如何做国外外贸网站有什么推广产品的渠道
  • 设计方面的网站网站推广seo教程
  • 代码编辑器做热点什么网站好扬州网络推广哪家好
  • 中国建设银行河北省分行官方网站新品推广策划方案
  • 做yield网站多少钱微信营销的方法7种
  • 德州建设局网站seo刷点击软件
  • 用wix做网站需要备案吗微信广告投放推广平台多少费用
  • 商城网站开发公司百度统计收费吗
  • 推广策略是什么优化搜索引擎的方法
  • 元做网站软件开发工程师
  • 美的网站建设水平swot分析海外网络推广服务