麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

1021. Deepest Root 解析

2019-11-11 01:59:32
字體:
供稿:網(wǎng)友

DFS的改版 需要依次對每個頂點分別進(jìn)行DFS然后求深度做大的幾個頂點。

理清思路應(yīng)該可以出來。

#include <iostream>#include <vector>#define Max 10010using namespace std;vector <int> g[Max];vector <bool> isVisit;vector <int> depth;vector <int> Root;int N;int ThisDepth = 1;int MaxDepth = 1;void DFS(int st ,int depth){ //st起點//	cout << "st: " << st << "d; " << depth << endl;	isVisit[st] = true;	ThisDepth = depth;	if (ThisDepth > MaxDepth)		MaxDepth = ThisDepth;	for (int i = 0; i < g[st].size(); i++) {		int v = g[st][i];		if (!isVisit[v]) {			 DFS(v, depth + 1);		}	}}int DFSTrave() {	int num = 0;//判斷是否聯(lián)通	int temp;	for (int j = 0; j < N ; j++) { //依次以各頂點為起點//		cout << " ----- " << j+1 << "-------" << endl;		ThisDepth = 1; MaxDepth = 1;		isVisit.clear();		isVisit.resize(N, false);		num = 1;		DFS(j, 1);		depth.push_back(MaxDepth);//保存深度		for (int i = 0; i < N ; i++) { //是否聯(lián)通			if (!isVisit[i]) {				num++;				DFS(i, 1);			}		}		if (num != 1)			return num;	}	return num;}void FindMax() {	int max = 0;	for (int i = 0; i < depth.size(); i++) {//		cout << depth[i] << endl;		if (depth[i] > max) {			max = depth[i];			Root.clear();			Root.push_back(i);		}		else if (depth[i] == max) {			Root.push_back(i);		}	}}int main() {	int Head, Tail;	cin >> N;	for (int i = 0; i < N-1; i++) {//N-1 行		cin >> Head >> Tail;//		cout << Head << " " << Tail << endl;		Head--; Tail--;//歸0		g[Head].push_back(Tail);		g[Tail].push_back(Head);	}#ifdef _DEBUG	for (int i = 0; i < N -1; i++) {		cout << "-----j: " << i+1 << "-------" << endl;		for (int j = 0; j < g[i].size(); j++) {			cout << g[i][j] +1 << endl;		}	}#endif	isVisit.resize(N, false);	int n = DFSTrave();	FindMax();#ifdef _DEBUG	cout << "depth" << endl;	for (int i = 0; i < depth.size(); i++) {		cout << depth[i] << endl;	}	cout << "----------" << endl;#endif		if (n != 1) {		cout << "Error: " << n << " components" << endl;	}	else {		for (int i = 0; i < Root.size(); i++) {			cout << Root[i]+1 << endl;		}	}		system("pause");	return 0;}


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 91精品国产乱码久久久久久久久 | 在线播放的av网站 | 久久毛片免费观看 | 国产一区二区免费 | 精品一区二区6 | 久久亚洲国产精品 | lutube成人福利在线观看污 | 国产亚洲精品久久久久久久久久 | 精品一区二区三区免费毛片 | 国产午夜小视频 | 国产羞羞网站 | 美女被免费网站在线软件 | 国产18成人免费视频 | 中文字幕极速在线观看 | 99精品国产一区二区三区 | 久久久久久久久日本理论电影 | 91九色论坛| 91久久精品国产亚洲 | a视频在线免费观看 | 成人国产精品色哟哟 | 国产又白又嫩又紧又爽18p | 欧美性成人 | 亚洲白嫩在线观看 | 国产免费永久在线观看 | av影院在线播放 | www.国产.com| 久久综合综合 | 国产免费v片 | 日韩视频一区 | 国产一级在线免费观看 | 免费一级毛片网站 | 国产二区三区在线播放 | 逼片视频 | 日本不卡一二三区 | 91久久一区| 日韩美香港a一级毛片免费 欧美一级淫片007 | 天天看天天摸天天操 | 成年免费看 | 国产精品视频久久久 | 亚洲精品xxx | 国产精品久久久久一区二区 |