- 博客(4)
- 资源 (1)
- 收藏
- 关注
原创 hdoj 2473 Junk-Mail Filter 并查集的删除
<br />并查集的删除<br />删除当前节点,准确的说是从当前节点集合中剔除当前节点,它的子节点不要动。普通的并查集在合并的时候有些节点是有字节点的,如果删除了这个节点的关系(把它的父亲设置为自己),那么当它的子节点合并的时候就找不到父亲了。解决的方法有两种:(很直接的)遍历所有的节点,findp(x),归并到根,显然不可能,或者在插入的时候,每一个节点都是叶子节点,那么删除的时候就很方便,不用没有归并到根的子节点了。//保证在删除这个节点之前,它的所有子节点已经归并到根上面了//引入虚拟节点,当合
2011-03-29 14:35:00 1121
原创 POJ1182 食物链————并查集
<br />#include<iostream>#include<string.h>typedef struct n{ int f; int rel;}node;node data[50010];int K,N;int findp(int x){ int tmp_p=data[x].f; if(tmp_p!=x) { int root=findp(tmp_p); data[x].f=root;
2011-03-28 00:40:00 518
原创 POJ1703
<br />#include<iostream>#include<string.h>using namespace std;typedef struct n{ int f; int rel;}node;node f[100010];int findp(int x){ int root; int tmp_f=f[x].f; if(x!=f[x].f) { root=findp(tmp_f); f[x].f
2011-03-27 21:21:00 543
原创 浅析Linux源码:bootsect.s,setup.s,head.s
最近在学习操作系统,就看了下Linux0.11版的源码解析,写一点自己的体会。 PC开机之后,80X86进入实模式,并且从BIOS(RAM)里的某个地址开始,读取代码到CPU,并执行。BIOS对机器自检,并从内存0x0000处初始化中断向量(BIOS的),中断向量可以这样理解,子函数的入口地址,CPU调用BIOS的中断向量,可以获得一些硬盘等参数,后面会用到。这些子函数据猜测应该是在BIOS里面。中断向量表占用大概1M的空间(0x0000-0x1000)。 然后,BIOS把磁盘或者
2010-11-09 17:02:00 884
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人