⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.cpp

📁 清华大学计算机系数据结构课程教材《数据结构 用面向对象方法和C++描述》(殷人昆主编)的类库(书中程序的源代码)
💻 CPP
字号:
#include "UFSets.h"
#include <iostream>
using namespace std;


int main() {
	cout<<"请输入元素个数:";
	int n;
	cin>>n;
	UFSets uf(n);
	cout<<"并差集为:"<<endl;
	uf.output();
	cout<<endl;
	cout<<"输入要合并的元素:";
	int r1,r2;
	cin>>r1>>r2;
	uf.Union(r1,r2);
	cout<<"合并后的并差集为:"<<endl;
	uf.output();
	cout<<endl;	
	cout<<"输入要合并 (压缩高度的合并算法) 的元素:";
	cin>>r1>>r2;
	uf.WeightedUnion(r1,r2);
	cout<<"合并后的并差集为:"<<endl;
	uf.output();
	cout<<endl;
	cout<<"输入搜索元素:";
	cin>>n;
	r1=uf.Find(n);
	cout<<"此结点的根"<<n<<" 是"<<r1<<endl;
	cout<<endl;
	cout<<"输入搜索(使用折叠规则的搜索算法)元素:";
	cin>>n;
	r1=uf.CollapsingFind(n);
	cout<<"此结点"<<n<<"的根是"<<r1<<endl;
		cout<<"测试完毕"<<endl;

	while(1)//为了在类库说明文档中便于观察,加入这一句
		cout<<"";
	return 0;
}

/*
输入示例:

请输入元素个数: 3
并差集为:
结点0 : 是根结点,有 0子女
结点1 : 是根结点,有 0子女
结点2 : 是根结点,有 0子女

输入要合并的元素:2 3
合并后的并差集为:
结点0 : 是根结点,有 0子女
结点1 : 是根结点,有 0子女
结点2 : 是根结点,有 33686019子女

输入要合并 (压缩高度的合并算法) 的元素:2 1
合并后的并差集为:
结点0 : 是根结点,有 0子女
结点1 : 父亲结点2
结点2 : 是根结点,有 33686020子女

输入搜索元素:2
此结点的根2 是2

输入搜索(使用折叠规则的搜索算法)元素:1
此结点1的根是2
测试完毕

*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -