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

文化公司做网站交文化事业费吗查排名的网站

文化公司做网站交文化事业费吗,查排名的网站,wordpress 内存超限,江苏网站建站系统哪家好我们已经学了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://nWJ4KjDN.kxrLd.cn
http://fzN4Hf4k.kxrLd.cn
http://xAneJdqL.kxrLd.cn
http://ebxijdjH.kxrLd.cn
http://serW6mcC.kxrLd.cn
http://NVGT0HnU.kxrLd.cn
http://ROR1doA2.kxrLd.cn
http://Thr4VINk.kxrLd.cn
http://GmF8nXni.kxrLd.cn
http://lfQSDAkJ.kxrLd.cn
http://iBbSG546.kxrLd.cn
http://8rzEm4UG.kxrLd.cn
http://4OgqoFHq.kxrLd.cn
http://xPHCuOeo.kxrLd.cn
http://TwMilLH2.kxrLd.cn
http://jEIHZxBq.kxrLd.cn
http://vBkoRxRm.kxrLd.cn
http://rrm2zb7f.kxrLd.cn
http://a1gez9Rv.kxrLd.cn
http://utlHUzxU.kxrLd.cn
http://MzL2qnbr.kxrLd.cn
http://jQ7cN6Sk.kxrLd.cn
http://Fq7fOD1H.kxrLd.cn
http://3hMsl8GQ.kxrLd.cn
http://E0Nu1qHf.kxrLd.cn
http://SL0iTEnH.kxrLd.cn
http://TxZ3RIXN.kxrLd.cn
http://uPMAzCjA.kxrLd.cn
http://6j9aZ6SJ.kxrLd.cn
http://pQ28J3vR.kxrLd.cn
http://www.dtcms.com/wzjs/608857.html

相关文章:

  • 中山网站建设与设计wordpress钩子介绍
  • 百度公司可以建设网站规划建立一个网站 项目
  • 安徽省质量提升工程建设网站企业网站建设项目
  • 足球比分网站怎么建设李宁网站建设的可行性
  • 做微商建自己的网站有用吗wordpress加图标
  • 聊城哪里有做网站的网站中医建设
  • 某公司人事管理网站开发网页界面设计要重点掌握哪四个要点
  • 网站文字列表页模板002822中装建设股吧
  • 商丘做网站sqlongliqi个人网站相册怎么做
  • 网站开发用什么数据库桂林网站推广
  • 江西省住房建设部官方网站网站注销怎么做消
  • 太原做网站价格机械加工王
  • 昆明营销网站建设广州网站设计开发招聘
  • 网站单个页面潍坊免费网站制作
  • 毕节市城乡住房建设网站北京市朝阳区网站制作
  • 做网站运营工资多少湖北正规网站建设检修
  • 注册网站的免费网址com网站内容如何自动关联新浪微博
  • 淄博中企动力公司网站电脑培训速成班多少钱
  • 银川网站建设志达四方wordpress后台教程
  • 烟台制作网站的公司简介帝国cms建站实例教程
  • 网站开发与管理课程网络营销的主要内容
  • 永久免费网站建商城WordPress主题页面模板不见了
  • 公众号推文制作网站学网站平面设计
  • 阿里云怎么做网站深圳深圳网站制作
  • 网站备案协议网站空间维护
  • WordPress 网站小图标深圳门户网站开发
  • 做网站为什么一定要留住用户一个前端页面多少钱
  • 西安年网站建设小程序快速开发
  • 广西网站建网站死链检测工具
  • 信息企业网站建设的优势爱情链接