不相交集合 故名思意就是一种含有多个不相交集合的数据结构。典型的应用是确定无向图中连通子图的个数。其基本操作包括:Make-Set(x):建立一个新的集合,集合的成员是x;Union(x,y): 将包含x和y的集合合并为一个集合;Find-Set(x): 返回指向包含x的集合的指针;下面是一个例子,...
分类:
其他好文 时间:
2014-08-04 06:13:46
阅读次数:
218
今天在做项目时,看到了一个从没见过的MySQL函数——FIND_IN_SET(),顿时就产生了浓郁的兴趣,然后就搜了搜,翻了翻。语法:FIND_IN_SET(str,strlist)定义:1. 假如字符串str在由N子链组成的字符串列表strlist中,则返回值的范围在1到N之间。2. 一个字符串列...
分类:
其他好文 时间:
2014-07-16 23:11:37
阅读次数:
185
一道比最基础的并查集有优化的题;
l 并查集的优化
1、Find_Set(x)时 路径压缩
寻找祖先时我们一般采用递归查找,但是当元素很多亦或是整棵树变为一条链时,每次Find_Set(x)都是O(n)的复杂度,有没有办法减小这个复杂度呢?
答案是肯定的,这就是路径压缩,即当我们经过"递推"找到祖先节点后,"回溯"的时候顺便将它的子孙节点都直接指向祖先,这样以后...
分类:
其他好文 时间:
2014-07-14 18:30:13
阅读次数:
233
2014.06.18 14:16简介: “并查集”,英文名为“union-find set”,从名字就能看出来它支持合并与查找功能。另外还有一个名字叫“disjoint set”,中文名叫不相交集合。可能我们倾向于用最短的名字,所以就出现了“并查集”翻译为“disjoint set”的情况。并查集....
分类:
编程语言 时间:
2014-06-28 19:55:37
阅读次数:
331
查询表字段 pingid = (1,2,3,)用正则select * from linkinfo where pingid regexp '[[::]]'用FIND_IN_SET()SELECT * FROM linkinfo WHERE FIND_IN_SET( '1', pingid )原来以为...
分类:
其他好文 时间:
2014-06-20 22:34:52
阅读次数:
254
1.从一串字符串中获取特定的信息要求1:获取本机IP:menu.lst为系统镜象的IP配置文件,需要从中获取到本机IP信息(从文件获取信息)1
timeout 12 default 03 4 title live5 find --set-root /casper/vmlinuz6 kernel
/c...
分类:
系统相关 时间:
2014-05-26 23:44:19
阅读次数:
585