考研复习之并查集

今天主要复习的树的并查集(呵呵,想想后面还有平衡二叉树就脑壳疼)

简单理解无非就是每个节点一开始的数都是存-1,表示他没有根源,一旦合并,一个的根本来是-1就变成另一个数,这样两个合成一个,可以迅速的找到两个数据是否在同一个集合里面。

其实就是树的简单应用啦。

废话不多说上代码。

#include
#include
#include
#include
#include
#define size 100 
using namespace std;
int s[size];
void INitial(){
	for(int i=0;i=0){
		x = s[x];
	}
	return x;
} 
void Union(int root1,int root2){
	s[root2] = root1;
} 
int main(){
	INitial();
	int n = 5;//先输入输入5个数据 任意链接 
	for(int i=0;i

 

你可能感兴趣的:(搜索,并查集)