算法模板——并查集 1
2015-01-20 21:56
267 查看
实现功能——操作1:将两个数字合并到一个集合内;操作2:判断两个数字是否在一起
第6行是亮点,这个优化能快出不少,真的
第6行是亮点,这个优化能快出不少,真的
var i,j,k,l,m,n:longint; c:array[0..100000] of longint; function getfat(x:longint):longint;inline; begin if c[x]<>x then c[x]:=getfat(c[x]); //亮点在这里么么哒 exit(c[x]); end; begin readln(n); for i:=1 to n do c[i]:=i; while true do begin read(i);if (i<1) or (i>2) then halt; readln(j,k); case i of 1:c[getfat(j)]:=getfat(k); //合并 2:if getfat(j)=getfat(k) then writeln('Together!') else writeln('Not together!'); //判断是否已合并 end; end; end.
相关文章推荐
- 算法模板之并查集
- 算法模板学习专栏之并查集(一)入门
- 算法模板——并查集 2(支持快速即时查询本连通块内容,纯原创!)
- 【图像算法】模板匹配
- 最小割s-w算法模板
- 并查集模板
- POJ 3041 Asteroids | 匈牙利算法模板
- 并查集(Union-Find)算法介绍
- 最小树形图模板(朱刘算法)
- Dynamic len 题解+代码 (带修改莫队算法模板)
- 机试算法讲解: 第33题 并查集之找小伙伴
- hdu1231 并查集模板题
- BZOJ - 2038: 小Z的袜子(hose) 莫队算法 模板
- POJ 3041 Asteroids(最小顶点覆盖,匈牙利算法模板)
- 【讲解+模板】并查集
- 算法痕迹---并查集
- <模板><计算几何>凸包及其基本算法
- 图算法总结1(图的遍历及应用、并查集)[代码没有写]
- 关于Prime算法的从入门到升天的讲解(带模板)
- 算法:程序设计之并查集