亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? partree.h

?? 圖的基類以及最短路徑算法
?? H
字號(hào):
//類ParTreeNode描述了樹的結(jié)點(diǎn)定義
template<class T>
class ParTreeNode  { 					    //樹結(jié)點(diǎn)定義
private:
	T				value;					//結(jié)點(diǎn)的值
	ParTreeNode<T>* parent;					//父結(jié)點(diǎn)指針
	int		nCount;							//以此結(jié)點(diǎn)為根的子樹的總結(jié)點(diǎn)個(gè)數(shù)
public:
	ParTreeNode();							//構(gòu)造函數(shù)
	virtual ~ParTreeNode(){};				//析構(gòu)函數(shù)
	T	getValue();							//返回結(jié)點(diǎn)的值
	void  setValue(const T& val);			//設(shè)置結(jié)點(diǎn)的值
	ParTreeNode<T>*  getParent();			//返回父結(jié)點(diǎn)指針
	void  setParent(ParTreeNode<T>* par);	//設(shè)置父結(jié)點(diǎn)指針
	int   getCount();						//返回結(jié)點(diǎn)數(shù)目
	void  setCount(const int count);		//設(shè)置結(jié)點(diǎn)數(shù)目
};

//ParTreeNode抽象數(shù)據(jù)類型成員函數(shù)的實(shí)現(xiàn)
template<class T>
ParTreeNode<T>::ParTreeNode()  {            //構(gòu)造函數(shù)
	parent = NULL;
	nCount = 1;
}
template<class T>
T ParTreeNode<T>::getValue()  {				//返回結(jié)點(diǎn)的值
	return value;
}
template<class T>
void ParTreeNode<T>::setValue(const T& val)  {			//設(shè)置結(jié)點(diǎn)的值
	value = val;
}
template<class T>
ParTreeNode<T>* ParTreeNode<T>::getParent()  {			//返回父結(jié)點(diǎn)指針
	return parent;
}
template<class T>
void ParTreeNode<T>::setParent(ParTreeNode<T>* par)  {   //設(shè)置父結(jié)點(diǎn)指針
	parent = par;
}
template<class T>
int ParTreeNode<T>::getCount()  {						//返回結(jié)點(diǎn)數(shù)目
	return nCount;
}
template<class T>
void ParTreeNode<T>::setCount(const int count)  {		//設(shè)置結(jié)點(diǎn)數(shù)目
	nCount = count;
}

//類ParTree描述了樹的定義
template<class T>
class ParTree  {								//樹定義
public:
	ParTreeNode<T>* array;						//存儲(chǔ)樹結(jié)點(diǎn)的數(shù)組
	int	Size;									//數(shù)組大小
	ParTree(const int size);					//構(gòu)造函數(shù)
	virtual ~ParTree();							//析構(gòu)函數(shù)
	ParTreeNode<T>*	Find(ParTreeNode<T>* node)const;//查找node結(jié)點(diǎn)的根結(jié)點(diǎn)
	ParTreeNode<T> *FindPC(ParTreeNode<T> *node) const; // 帶壓縮
	
	void Union(int i,int j);					//把下標(biāo)為i,j的結(jié)點(diǎn)合并成一棵子樹
	void UnionPC(int i, int j);                 //帶壓縮
	bool Different(int i,int j);				//判定下標(biāo)為i,j的結(jié)點(diǎn)是否在一棵樹中
};

//樹的成員函數(shù)的實(shí)現(xiàn)
template <class T>
ParTree<T>::ParTree(const int size)  {			//構(gòu)造函數(shù)
	Size = size;
	array = new ParTreeNode<T>[size];
}

template <class T>											
ParTree<T>::~ParTree()  {						//構(gòu)造函數(shù)
	delete []array;
}

// 函數(shù)功能:找到目標(biāo)結(jié)點(diǎn)的根結(jié)點(diǎn)
template <class T>
ParTreeNode<T>*	ParTree<T>::Find(ParTreeNode<T>* node) const  {
	ParTreeNode<T>* pointer = node;
	while(pointer->getParent() != NULL)
		pointer = pointer->getParent();
	return pointer;
}

//函數(shù)功能:帶路徑壓縮的Find算法
template <class T>
ParTreeNode<T> *ParTree<T>::FindPC(ParTreeNode<T> *node) const  {
	if (node->getParent() == NULL)
		return node;
	
	node->setParent(FindPC(node->getParent()));
	return node->getParent();
}

//函數(shù)功能:判定下標(biāo)為i,j的結(jié)點(diǎn)是否在一棵樹中
template<class T>
bool ParTree<T>::Different(int i,int j)  {
	ParTreeNode<T>* pointeri = Find(&array[i]);		//找到結(jié)點(diǎn)i的根
	ParTreeNode<T>* pointerj = Find(&array[j]);		//找到結(jié)點(diǎn)j的根
	return pointeri != pointerj;
}

//把下標(biāo)為i,j的結(jié)點(diǎn)合并成一棵子樹
template<class T>
void ParTree<T>::Union(int i,int j)  {
	ParTreeNode<T>* pointeri = Find(&array[i]);		//找到結(jié)點(diǎn)i的根
	ParTreeNode<T>* pointerj = Find(&array[j]);		//找到結(jié)點(diǎn)j的根
	if(pointeri != pointerj) {
		if(pointeri->getCount()>=pointerj->getCount()) {
			pointerj->setParent(pointeri);
			pointeri->setCount(pointeri->getCount()+pointerj->getCount());
		}
		else {
			pointeri->setParent(pointerj);
			pointerj->setCount(pointeri->getCount()+pointerj->getCount());
		}
	}
}

// 函數(shù)功能:歸并兩個(gè)集合, 帶壓縮
template <class T>
void ParTree<T>::UnionPC(int i, int j)  {
	ParTreeNode<T> *pointeri = FindPC(&array[i]);
	ParTreeNode<T> *pointerj = FindPC(&array[j]);
	
	if (pointeri != pointerj)  {
		if (pointeri->getCount() >= pointerj->getCount())  {
			pointerj->setParent(pointeri);
			pointeri->setCount(pointeri->getCount() + pointerj->getCount());
		}
		else  {
			pointeri->setParent(pointerj);
			pointerj->setCount(pointeri->getCount() + pointerj->getCount());
		}
	}
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线观看日韩精品| 成人国产精品视频| 91精品国产综合久久久久久久久久| 亚洲日本韩国一区| 欧美综合在线视频| 日韩中文字幕91| 精品噜噜噜噜久久久久久久久试看| 久久精品国产一区二区| 久久久久久9999| 9l国产精品久久久久麻豆| 一区二区三区欧美日| 91精品国产高清一区二区三区 | 久久精品国产第一区二区三区| 欧美一区二区三区色| 国产精品一品视频| 综合自拍亚洲综合图不卡区| 日本电影欧美片| 麻豆一区二区三区| 国产精品欧美一区喷水| 欧洲精品视频在线观看| 激情欧美一区二区| 亚洲男帅同性gay1069| 欧美精品日韩一区| 岛国av在线一区| 天堂av在线一区| 国产午夜精品久久| 欧美日韩另类一区| 国产福利视频一区二区三区| 亚洲一区日韩精品中文字幕| 久久伊人中文字幕| 欧美日韩中文字幕一区| 国产一区二区三区四| 亚洲精品国产精品乱码不99| 日韩一二三区视频| 色94色欧美sute亚洲线路一ni| 国产自产v一区二区三区c| 亚洲国产精品麻豆| 中文字幕亚洲欧美在线不卡| 一区二区三区四区五区视频在线观看| 6080午夜不卡| 色偷偷久久人人79超碰人人澡| 麻豆成人久久精品二区三区红| 亚洲卡通欧美制服中文| 精品成人一区二区| 欧美女孩性生活视频| 9l国产精品久久久久麻豆| 国产一区二区91| 日韩福利电影在线观看| 亚洲另类在线视频| 国产午夜三级一区二区三| 日韩一区二区在线免费观看| 在线视频你懂得一区| 不卡大黄网站免费看| 乱一区二区av| 日本视频免费一区| 视频一区欧美精品| 亚洲精品美国一| 亚洲精品伦理在线| 亚洲免费伊人电影| 亚洲色图欧美偷拍| 中文字幕一区在线观看视频| 久久亚洲综合av| 精品国产乱码久久久久久夜甘婷婷 | 久久久久九九视频| 91精品国产美女浴室洗澡无遮挡| 91视频观看免费| 91丨九色丨蝌蚪富婆spa| 国产一区二区h| 国产精品1区2区3区| 国产一区二区不卡在线| 狠狠色狠狠色综合系列| 精品中文字幕一区二区小辣椒 | 欧美精品一区二区三区在线 | 在线影院国内精品| 色婷婷国产精品| 在线精品视频免费播放| 91啪九色porn原创视频在线观看| av激情亚洲男人天堂| 成人h精品动漫一区二区三区| 国产91精品露脸国语对白| 国产91精品一区二区麻豆网站| 国产精品乡下勾搭老头1| 国产东北露脸精品视频| 粉嫩aⅴ一区二区三区四区| 大胆亚洲人体视频| 26uuu国产日韩综合| 26uuu亚洲综合色| 国产欧美一区二区在线观看| 国产精品乱码人人做人人爱| 中文字幕一区二区三区av| 一区二区三区资源| 五月天中文字幕一区二区| 免费人成精品欧美精品| 国产aⅴ综合色| 久久综合国产精品| 久久久影视传媒| 色婷婷av久久久久久久| 欧美性感一区二区三区| 欧美男生操女生| 日韩一区二区三区在线| 国产亚洲一区二区在线观看| 国产精品久久久久久福利一牛影视 | 久久久久国产精品麻豆| 一色屋精品亚洲香蕉网站| 亚洲一区二区三区激情| 久久国产夜色精品鲁鲁99| 粉嫩高潮美女一区二区三区| 91免费看视频| 日韩女优av电影| 国产精品黄色在线观看| 性感美女久久精品| 国产一区二区三区四区五区入口 | 日本一区二区在线不卡| 亚洲三级在线看| 久久国产成人午夜av影院| 不卡一区二区中文字幕| 欧美精品丝袜中出| 日本一区二区三区四区在线视频 | 蜜桃av一区二区三区电影| 国产夫妻精品视频| 欧美亚洲丝袜传媒另类| 亚洲精品一线二线三线无人区| 日韩理论片在线| 国内精品免费**视频| 欧美体内she精高潮| 久久精品日韩一区二区三区| 亚洲高清免费观看高清完整版在线观看| 日本中文字幕一区二区有限公司| 成人美女视频在线看| 日韩一区二区免费电影| 亚洲日本在线视频观看| 韩国av一区二区三区在线观看| 色www精品视频在线观看| 久久久久高清精品| 麻豆一区二区99久久久久| 在线精品视频免费观看| 国产三级三级三级精品8ⅰ区| 天天射综合影视| 色天天综合色天天久久| 国产日韩精品一区二区三区| 日本va欧美va精品发布| 在线观看日产精品| 国产精品天美传媒沈樵| 国产一区二区三区免费| 日韩一级高清毛片| 亚洲国产美国国产综合一区二区 | 一本到三区不卡视频| 欧美精品一区二| 蜜桃视频第一区免费观看| 91福利在线播放| 亚洲你懂的在线视频| 波多野结衣精品在线| 国产亚洲精品aa午夜观看| 麻豆国产欧美日韩综合精品二区| 欧美三级电影精品| 亚洲精品欧美激情| 色婷婷综合中文久久一本| 亚洲桃色在线一区| 9久草视频在线视频精品| 国产精品国产三级国产普通话99| 国产成人亚洲综合a∨婷婷| 国产午夜精品久久久久久久| 狠狠色综合播放一区二区| 精品成人佐山爱一区二区| 精品一区二区三区久久久| 久久综合久久综合亚洲| 国产一区二区主播在线| 欧美精品一区二区精品网| 韩国欧美国产一区| 久久久噜噜噜久久人人看| 国产综合久久久久影院| 国产亚洲精品精华液| 成人蜜臀av电影| 一区二区三区四区在线| 欧美中文字幕一区| 天天综合色天天综合色h| 日韩一区二区三区电影| 激情综合网最新| 欧美激情一区三区| 99久久精品国产麻豆演员表| 亚洲精品一二三| 欧美精品 国产精品| 捆绑变态av一区二区三区| 久久伊人中文字幕| 成人禁用看黄a在线| 一区二区三区国产精华| 日韩一区二区在线观看视频播放| 激情久久五月天| 成人免费在线播放视频| 欧美精选一区二区| 激情文学综合插| 亚洲人123区| 7777精品伊人久久久大香线蕉最新版| 精品一区二区三区视频在线观看| 中文字幕二三区不卡| 色综合久久久久| 青草国产精品久久久久久| 国产欧美精品日韩区二区麻豆天美| 91浏览器在线视频| 日韩av在线免费观看不卡|