并查集 hdu 1232
来源:互联网 发布:淘宝店网页制作 编辑:程序博客网 时间:2024/05/20 01:39
/*hdu 1232 并查集*/# include<iostream># include<cstdio># include<cstring># include<algorithm># include<cstdlib># include<cmath>using namespace std;int bin[1008];int findx(int x)//并查集中的压缩路径的方法,可以大大减少时间的复杂度{ if(x!=bin[x]) bin[x]=findx(bin[x]);//运用了递归的思想 return bin[x];}void merge(int x,int y)//合并集合的函数{ int fx,fy; fx=findx(x); fy=findx(y); if(fx>fy) bin[fx]=fy; else bin[fy]=fx;}int main(){ int n,m; int a,b; while(cin>>n) { if(n==0) break; cin>>m; for(int i=1;i<=n;i++)//这步是给父亲节点进行初始化 { bin[i]=i; } while(m--) { cin>>a>>b; merge(a,b); } int count=0; for(int i=1;i<=n;i++) { if(bin[i]==i) count++; } cout<<count-1<<endl;//这里减1是因为在初始化时,已经bin[i]=i在其中,最少有1个符合要求 } return 0;}/*总结体会:对于一个算法,个人觉得最主要是它的作用,而此处并查集的作用就是:判断图和树的连通性以及衍生出来的连通分支数的计算;并查集具体算法思想还是很容易上手的,还有就是其中有个压缩路径的优化操作运用递归的思想,这个还是值得去体会一下,也许可能很简单,但是不要仅仅局限在一道题目上,要做到一通百通。*/
0 0
- HDU-1232 并查集
- hdu 1232 并查集
- HDU-1232(并查集)
- hdu 1232(并查集)
- hdu 1232 并查集
- HDU 1232 并查集
- hdu 1232 并查集
- hdu 1232(并查集)
- HDU 1232 并查集
- hdu 1232 并查集
- 并查集 hdu 1232
- hdu 1232 并查集
- hdu 1232 并查集
- hdu 1232 并查集
- HDU 1232--并查集
- HDU--1232 并查集
- hdu 1232 并查集
- hdu 1232 并查集
- 人格的五大模型
- java反射机制可以得到类的属性和方法以及类的构造器
- pthread_cond_wait和pthread_cond_signal使用注意事项 http://hongdow.com/pthread_cond_wait%e5%92%8cpthread_con
- 1.3.3 了解程序的运行
- 关于oracle的行迁移
- 并查集 hdu 1232
- Bigbluebutton及GitHub for windows安装和配置
- u-boot第二阶段代码(仅启动linux)
- 经纬财富:遵义国内现货白银平台再现“猫腻”
- Jython连接Java和Python的桥梁
- 锁屏状态下点亮屏幕,并弹出闹钟提示信息,可以在锁屏界面上取消闹钟;使用广播接收闹钟定时:
- android4.0与2.3版本的TP代码区别
- hdu 1977 Consecutive sum II
- 数据库索引的作用和优点缺点