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

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

?? graphlink.h

?? 該代碼為圖的拓?fù)渑判?
?? H
字號:
#include<iostream>
#include<fstream>
#include<limits>
#include<vector>
#include<algorithm>

using namespace std;

//利用鄰接表實現(xiàn)圖的算法

#define MAX_VEX_NUM 10
#define INF  INT_MAX


typedef int VertexType;

struct ArcNode{ //單鏈表結(jié)點結(jié)構(gòu)
     int    adjvex; //該弧所指向的頂點的位置
     ArcNode   *nextarc;//指向下一條弧的指針
     //InfoType     *info;      //該弧相關(guān)信息的指針
};


typedef struct  VNode{//頂點結(jié)構(gòu)
      int   data;//頂點信息
      ArcNode    *firstarc; //指向第一條依附該頂點的弧的指針
	  int   indegree;//入度
}VNode,AdjList[MAX_VEX_NUM];

typedef struct { //鄰接表結(jié)構(gòu)
       AdjList    vertices;
       int    vexnum,arcnum;   //圖的當(dāng)前頂點數(shù)和弧數(shù)
}ALGraph;


class Graph{
  public:
    Graph();
    Graph(const char*);
    void degree(vector<int>&,vector<int>&);
    int order();
    int size();
    void output();
	void tpsort(vector<int>id);
	int printDegree (const vector<int>id, const vector<int>od);
  private:
    ALGraph g;
	int Matrix[MAX_VEX_NUM][MAX_VEX_NUM];
};

Graph::Graph()
{
	cout<<"請輸入節(jié)點數(shù):";
	cin>>g.vexnum;
	int m=0;
	for(int i=0;i<g.vexnum;i++)
	{
		g.vertices[i].data=i;
		ArcNode* p=new ArcNode();
	    g.vertices[i].firstarc=p;
		for(int j=0;j<g.vexnum;j++)
		{
			cout<<"Matrix["<<i<<']'<<'['<<j<<']'<<'=';
			cin>>Matrix[i][j];
			if(i==j && Matrix[i][j]!=0)
				Matrix[i][j]=0;
			if(Matrix[i][j]==1)
			{
				m++;
				p->adjvex=j;
                p->nextarc=new ArcNode();
				p=p->nextarc;
			}
			if(j==g.vexnum-1)
				p->nextarc=NULL;
		}
	}
  g.arcnum= m;
}

//**********************************************************
Graph::Graph(const char* f)
{
	ifstream in(f);
	int m=0;
	in>>g.vexnum;
	for(int i=0;i<g.vexnum;i++)
	{
		g.vertices[i].data=i;
		ArcNode* p=new ArcNode();
	    g.vertices[i].firstarc=p;
		for(int j=0;j<g.vexnum;j++)
		{
			in>>Matrix[i][j];
			if(i==j && Matrix[i][j]!=0)
				Matrix[i][j]=0;
			if(Matrix[i][j]==1)
			{
				m++;
				p->adjvex=j;
                p->nextarc=new ArcNode();
				p=p->nextarc;
			}
			if(j==g.vexnum-1)
				p->nextarc=NULL;
		}
	}
	g.arcnum = m;
}
//***********************************************************************
void Graph::degree(vector<int>& indeg,vector<int>& outdeg)
{
	for(int count=0;count<g.vexnum;count++)
	{
		indeg[count]=outdeg[count]=0;
	}
	for(int i=0;i<g.vexnum;i++)
	{
		for(int j=0;j<g.vexnum;j++)
		{
			if(Matrix[i][j]>0&&Matrix[i][j]<INF)
			{
				 indeg[j]++;
				 outdeg[i]++;
			}
		}
	}
}
//****************************************************************************
int Graph::order()
{
	return g.vexnum;
}
//****************************************************************************
int Graph::size()
{
	return g.arcnum;
}

//******************************************************************************
void Graph::output()
{
	cout<<"該圖的鄰接矩陣是:"<<endl;
	for (int i=0;i<g.vexnum;i++)
	{
		for (int j=0; j<g.vexnum; j++)
		{
			cout<<Matrix[i][j]<<"  ";
		}
		cout<<endl;
	}
	cout<<"圖的節(jié)點數(shù)為:"<<g.vexnum<<endl;
    cout<<"圖的邊數(shù)為:"<<g.arcnum<<endl;
	cout<<"該圖的鄰接表表示為:"<<endl;
	for(int count=0; count<g.vexnum;count++)
	{
		cout<<g.vertices[count].data+1<<"->";
		ArcNode* p=g.vertices[count].firstarc;
        while(p->nextarc!=NULL)
		{
			if(p->nextarc->nextarc!=NULL)
			{
				cout<<p->adjvex+1<<"->";
			}
			else
                cout<<p->adjvex+1;
			p=p->nextarc;
		}
		cout<<endl;
	}
	cout<<endl;
}
//********************************************************************************
void Graph::tpsort(vector<int>id)//拓?fù)渑判?{
	int top=-1,m=0,i,j;
	ArcNode *p=NULL;
	vector<int>::iterator it;
	for(i=0,it=id.begin();i<g.vexnum,it!=id.end();i++,it++)
	{
		g.vertices[i].indegree=*it;
	}
	for(i=0;i<g.vexnum;i++)
	{
		if(g.vertices[i].indegree==0)
		{
			g.vertices[i].indegree=top;
			top=i;
		}
	}
    cout<<endl;
	while(top!=-1)
	{
		m++;
		cout<<g.vertices[top].data+1<<" ";
		p=g.vertices[top].firstarc;
		top=g.vertices[top].indegree;
		while(p->nextarc!=NULL)
		{
			j=p->adjvex;
			g.vertices[j].indegree--;
			if(g.vertices[j].indegree==0)
			{
				g.vertices[j].indegree=top;
				top=j;
			}
			p=p->nextarc;
		}
	}
	if(m==g.vexnum)
	{
		cout<<"為拓?fù)湫蛄?"<<endl;
	}
	else
	{
		cout<<"拓?fù)湫蛄胁淮嬖?"<<endl;
	}
}
//**************************************************************************************
int Graph::printDegree (const vector<int>id, const vector<int>od)
{
	//輸出入度和出度
	for(int i=0;i<id.size();i++)
	{
		cout<<"第 "<<i+1<<" 個節(jié)點的入度為: "<<id[i]<<endl;
	}
	for(int j=0;j<od.size();j++)
	{
		cout<<"第 "<<j+1<<" 個節(jié)點的出度為: "<<od[j]<<endl;
	}
    return 0;
}

	



?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人小视频在线观看| 一区二区在线观看免费视频播放| 日本在线不卡一区| 欧美日韩国产高清一区二区| 五月婷婷欧美视频| 欧美电影免费观看高清完整版在线 | 日本一区二区三级电影在线观看 | 爽爽淫人综合网网站| 日韩欧美激情一区| 成人少妇影院yyyy| 亚洲人成网站在线| 欧美午夜片在线看| 老色鬼精品视频在线观看播放| 久久在线观看免费| 成人黄色网址在线观看| 亚洲午夜羞羞片| 日韩欧美一区二区在线视频| 国产伦理精品不卡| 亚洲免费观看高清完整版在线| 欧美精品在线一区二区三区| 久久不见久久见免费视频7| 中文子幕无线码一区tr| 欧美亚州韩日在线看免费版国语版| 五月天婷婷综合| 国产亚洲一区字幕| 欧美图片一区二区三区| 国产一区二区久久| 一区二区三区在线免费观看 | 国产综合久久久久久鬼色| 国产精品女主播在线观看| 欧美在线小视频| 国产精品中文字幕日韩精品| 亚洲精品午夜久久久| 日韩精品一区二区三区在线| 91丨porny丨在线| 九九精品视频在线看| 亚洲欧美aⅴ...| 久久婷婷成人综合色| 一本色道久久加勒比精品| 国产在线一区观看| 亚洲bdsm女犯bdsm网站| 国产精品乱子久久久久| 欧美一区二区三区免费在线看| 99久久国产综合精品麻豆| 极品少妇xxxx精品少妇偷拍| 亚洲影视在线播放| 国产精品嫩草99a| 精品日韩99亚洲| 欧美日韩精品综合在线| 波多野洁衣一区| 色综合久久综合网欧美综合网| 麻豆国产精品777777在线| 亚洲欧美日韩中文播放| 国产午夜精品久久久久久免费视| 欧美精品一级二级三级| 99精品久久免费看蜜臀剧情介绍| 国产在线视频不卡二| 天天做天天摸天天爽国产一区| 亚洲天堂中文字幕| 国产欧美日韩另类视频免费观看| 日韩欧美123| 91精品久久久久久久91蜜桃| 欧美午夜一区二区三区| 色婷婷狠狠综合| 91免费视频观看| 94色蜜桃网一区二区三区| 丁香六月综合激情| 国产91综合一区在线观看| 国内外精品视频| 久久精品国产亚洲高清剧情介绍| 日本欧美在线看| 日韩福利电影在线| 日韩国产一区二| 日韩电影在线观看网站| 亚洲.国产.中文慕字在线| 一区二区日韩av| 亚洲猫色日本管| 亚洲最大成人网4388xx| 亚洲一区二区免费视频| 一区二区三区鲁丝不卡| 一区二区三区四区在线免费观看| 日韩美女久久久| 亚洲精品美腿丝袜| 午夜欧美在线一二页| 日韩精品乱码av一区二区| 天天影视网天天综合色在线播放| 亚洲h在线观看| 免费在线看一区| 国产麻豆精品95视频| 国产成人综合在线| 成人一级视频在线观看| 成人av电影在线播放| 一本大道久久a久久精品综合| 日本韩国精品在线| 3atv一区二区三区| 欧美大片在线观看| 国产日韩欧美综合在线| 亚洲欧美日韩电影| 午夜久久久久久久久| 精品一区二区免费在线观看| 国产不卡在线一区| 色又黄又爽网站www久久| 欧美日韩成人激情| 亚洲精品一区二区三区四区高清 | 成人欧美一区二区三区黑人麻豆 | 91麻豆国产精品久久| 欧美视频中文字幕| 欧美一区2区视频在线观看| 精品国产一区二区三区不卡| 国产欧美日本一区视频| 亚洲精品国产视频| 久久精品国产亚洲高清剧情介绍 | 久久色在线观看| 亚洲免费观看高清完整版在线观看| 亚洲成人免费在线观看| 国产资源精品在线观看| 日本韩国一区二区三区| 欧美mv日韩mv国产网站| √…a在线天堂一区| 午夜激情一区二区| 国产激情视频一区二区在线观看 | 一区二区三区免费看视频| 奇米影视一区二区三区| 成人精品视频网站| 91精品国产综合久久久久| 久久精品亚洲乱码伦伦中文| 亚洲综合久久久久| 国产精品资源网| 欧美精品久久天天躁| 国产精品丝袜久久久久久app| 天堂av在线一区| 成人一级视频在线观看| 日韩免费成人网| 一区二区三区在线不卡| 国产91精品一区二区麻豆网站| 欧美日韩高清在线| 亚洲图片激情小说| 国产成人av在线影院| 3d动漫精品啪啪一区二区竹菊| 亚洲人一二三区| 国产一区 二区 三区一级| 欧美高清激情brazzers| 亚洲视频每日更新| 国产成a人亚洲精| 久久蜜桃一区二区| 日韩高清不卡一区二区三区| 91久久一区二区| 久久久精品tv| 久久99精品久久久久久| 欧美二区在线观看| 亚洲成人你懂的| 欧美三级一区二区| 伊人一区二区三区| 色综合久久66| 亚洲你懂的在线视频| 成熟亚洲日本毛茸茸凸凹| 亚洲精品在线观看视频| 伦理电影国产精品| 日韩精品一区二区在线| 丝袜诱惑制服诱惑色一区在线观看 | 欧美精品一区二区三区蜜桃| 日韩在线a电影| 欧美日韩亚洲国产综合| 一区二区三区四区不卡在线 | aaa国产一区| 国产精品乱人伦| 成人激情开心网| 国产精品理论片在线观看| 国产成人av一区二区三区在线| 久久亚洲捆绑美女| 国产风韵犹存在线视精品| 欧美r级电影在线观看| 国精产品一区一区三区mba桃花| 久久久久久亚洲综合| 国产一区美女在线| 国产精品每日更新| 92国产精品观看| 亚洲风情在线资源站| 555夜色666亚洲国产免| 日日噜噜夜夜狠狠视频欧美人 | 激情小说亚洲一区| 亚洲国产日韩综合久久精品| 欧美日韩美少妇| 麻豆一区二区99久久久久| 久久先锋影音av| bt欧美亚洲午夜电影天堂| 亚洲综合小说图片| 欧美精品日韩精品| 国产盗摄一区二区| 国产精品久久毛片a| 在线欧美一区二区| 美女网站色91| 国产精品美女久久福利网站| 欧美午夜精品一区| 精品一区二区三区免费视频| 国产日韩亚洲欧美综合| 色婷婷av一区二区三区大白胸| 国产亚洲1区2区3区| 欧美午夜精品久久久久久孕妇| 无吗不卡中文字幕|