等价类

int *E;
void Initialize(int n)
{
 E=new int[n+1];
 for(int i=1;i<=n;i++)
  E(i)=i;
}
void Union(int i, int j)
{
 for(int k=1;k<=n;k++)
  if(E(k)==j)
   E(k)=i;
}
int Find(int i)
{
 return E(i);
}

void main()
{
 int i,j;
 i=Find(a);
 j=Find(b);
 if(i!=j)
  Union(i,j);
}


Ref: <<数据结构,算法与应用>>P117~121

阅读更多
文章标签: 数据结构 算法
个人分类: 数据结构与算法
上一篇箱子排序
下一篇汉诺塔(Stack)
想对作者说点什么? 我来说一句

C++数据结构等价类实现

2010年04月12日 161KB 下载

没有更多推荐了,返回首页

关闭
关闭