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

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

?? graph.cpp

?? 數(shù)據(jù)結(jié)構(gòu)中關(guān)于圖的遍歷
?? CPP
字號:
#include<iostream.h>
#include<stdio.h>
//頭函數(shù)定義


const int max_vexnum=100;                                //最大結(jié)點(diǎn)數(shù)
int vexnum,arcnum;                                       //結(jié)點(diǎn)數(shù)和邊數(shù)
int matrix[max_vexnum][max_vexnum];                      //鄰接矩陣
int consult[max_vexnum];                                 //用于標(biāo)志結(jié)點(diǎn)是否被訪問過
char temp[max_vexnum];                                   //用來存儲結(jié)點(diǎn)的名字
int exist=0;                           //用于標(biāo)志圖是否存在,若不存在則為0,若存在為1



struct Queue{int qa;                                      
             int qe;
             int item[max_vexnum];
}queue;                                                   
//廣度優(yōu)先遍歷時用到的隊列





char Menu();                                           //用戶輸入時的提示
void Init(int vexnum);                                 //初始化標(biāo)志數(shù)組
void Creatmatrix();                                    //建立鄰接矩陣
void Dfs(int start);                                   //深度優(yōu)先遍歷
void Bfs(int start);                                   //廣度優(yōu)先遍歷
//需要調(diào)用的函數(shù)聲明





//*******************************************************************************************
//*******************************************主函數(shù)******************************************
//*******************************************************************************************
void main()
{   cout<<"***************************歡迎使用無向圖的遍歷***************************"<<endl;
	int start;
    char choice;
	choice=Menu();
	while(choice!='4'){
	  switch(choice)
	  {
	  case '1':Creatmatrix();break;
	  case '2':{
		  if(exist==0)
		  {cout<<"沒有圖可以遍歷,請先建立一個新圖"<<endl;break;}
          cout<<"你選擇的是深度優(yōu)先遍歷.你需要從哪個結(jié)點(diǎn)開始遍歷?"<<endl;
		  cout<<"請輸入該結(jié)點(diǎn)的編號:"<<endl;
          cin>>start;
		  Init(vexnum);start--;
		  Dfs(start);}break;
	  case '3':{
		      if(exist==0)
			{cout<<"沒有圖可以遍歷,請先建立一個新圖"<<endl;break;}
		   cout<<"你選擇的是廣度優(yōu)先遍歷.你需要從哪個結(jié)點(diǎn)開始遍歷?"<<endl;
		   cout<<"請輸入該結(jié)點(diǎn)的編號:"<<endl;
		   cin>>start;start--;Init(vexnum);
		   Bfs(start);break;}
	  default:cout<<"對不起,你輸入指令有誤!!!請重新選擇操作。"<<endl;break;
	  }
	choice=Menu();
	}
getchar();
}




//用戶輸入時的提示
char Menu()
{char choice;
 cout<<endl<<"請輸入你的選擇:"<<endl;
 cout<<"1.建立一個新的無向圖."<<endl;
 cout<<"2.按深度優(yōu)先進(jìn)行遍歷."<<endl;
 cout<<"3.按廣度優(yōu)先進(jìn)行遍歷."<<endl;
 cout<<"4.退出程序."<<endl;
 cin>>choice;
return (choice);
}





//初始化標(biāo)志數(shù)組
void Init(int vexnum)
{int i=1;
	for(;i<=vexnum;i++)
	 consult[i]=0;
}                                                            //全部初始化為零,未被訪問過





//建立鄰接矩陣
void Creatmatrix()
{ cout<<"請分別輸入新建的圖的結(jié)點(diǎn)數(shù)和邊數(shù)"<<endl;
  cin>>vexnum>>arcnum;
  int vn=vexnum;int an=arcnum;
  if(vexnum>max_vexnum)
  {cout<<"對不起,本程序所能建立圖的最大結(jié)點(diǎn)數(shù)為100"<<endl;return;}
  else if(an>(vn*(vn-1)/2))                                 //邊總數(shù)溢出
  {cout<<"這樣的圖不存在請重新操作"<<endl;return;}
  
  int t=0;
  cout<<"請輸入結(jié)點(diǎn)(請記住編號)"<<endl;
  for(;t<vn;t++)
	 { cout<<"請輸入第"<<t+1<<"個結(jié)點(diǎn)的名稱:";
       cin>>temp[t];}
  int i=0,j=0,k=0;char t1,t2;
  for(;i<vn;i++)
	 for(;j<vn;j++)
		 matrix[i][j]=NULL;                                    //初始化鄰接矩陣
  for(;k<an;k++)
  {cout<<"請輸入第"<<k+1<<"條邊的兩個結(jié)點(diǎn)(直接輸入中間不需空格):"<<endl;
    cin>>t1>>t2;
	for(t=0;(t<vn)&&(t1!=temp[t]);t++);
	i=t;                                                       //尋找t1對應(yīng)結(jié)點(diǎn)的位置
	for(t=0;(t<vn)&&(t2!=temp[t]);t++);
	j=t;                                                       //尋找t2對應(yīng)結(jié)點(diǎn)的位置
    matrix[i][j]++;matrix[j][i]++;}
  cout<<endl<<"所建無向圖的鄰接矩陣為:"<<endl<<endl;
  for(t=0;t<vexnum;t++)
  cout<<temp[t]<<"   ";
   cout<<endl<<endl;
   for(i=0;i<vn;i++)
	 {for(j=0;j<vn;j++)
		 cout<<matrix[i][j]<<"   ";
  cout<<endl;}
  exist=1;                                                     //說明圖存在
}





//深度優(yōu)先遍歷
void Dfs(int start)
{int j=0;
 cout<<temp[start]<<"---";
 consult[start+1]=1;                                        //在標(biāo)志數(shù)組中標(biāo)志為訪問過
 for(;j<vexnum;j++)
	 if((matrix[start][j]==1)&&(consult[j+1]==0)) 
		 Dfs(j);                                             //對未被訪問的下一結(jié)點(diǎn)進(jìn)行遞歸調(diào)用
}





//廣度優(yōu)先遍歷
void Bfs(int start)
{if(exist==0){cout<<"沒有圖可以遍歷,請先建立一個新的無向圖"<<endl;return;}
 int j;int s;
 consult[start+1]=1;
 cout<<temp[start]<<"---";
 queue.qa=0;
 queue.qe=0;
 queue.item[0]=start;                                       //進(jìn)入隊列
  while(queue.qa<=queue.qe)
  {s=queue.item[queue.qa++];                                //出隊列
	for(j=0;j<vexnum;j++)
	{if((matrix[s][j]==1)&&(consult[j+1]==0))
	{cout<<temp[j]<<"---";consult[j+1]=1;
	queue.item[++queue.qe]=j;}                              //進(jìn)隊列
	}
  }
}


	

	

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲黄色av一区| 亚洲欧美综合在线精品| 日韩精品91亚洲二区在线观看 | 欧美成人精精品一区二区频| 日韩精品一级中文字幕精品视频免费观看 | 亚洲成人你懂的| 欧美日韩大陆一区二区| 日韩一区欧美二区| 精品盗摄一区二区三区| 国产激情偷乱视频一区二区三区 | 日韩欧美激情在线| 国产激情一区二区三区| 最新国产精品久久精品| 在线观看日韩国产| 日本不卡一区二区三区 | 亚洲国产精品ⅴa在线观看| 91亚洲永久精品| 亚洲电影视频在线| 欧美精品一区二区三区在线 | 久久综合色之久久综合| 成人黄色在线看| 天天色天天爱天天射综合| 日韩欧美成人午夜| 97精品久久久久中文字幕| 首页国产欧美久久| 国产精品欧美一区喷水| 欧美美女直播网站| 国产精品一区二区不卡| 一区二区成人在线视频| 欧美本精品男人aⅴ天堂| 成人精品国产免费网站| 亚洲国产成人av网| 久久久精品tv| 欧美日韩免费一区二区三区| 国精品**一区二区三区在线蜜桃| 国产女主播一区| 欧美日韩午夜在线视频| 极品少妇xxxx精品少妇| 一区二区三区免费看视频| 精品欧美乱码久久久久久1区2区| 日本高清视频一区二区| 国产黄色成人av| 蜜臀av性久久久久蜜臀aⅴ四虎| 中文字幕一区三区| 2024国产精品| 欧美精品乱码久久久久久按摩 | 国产在线一区二区综合免费视频| 一二三区精品福利视频| 国产色婷婷亚洲99精品小说| 欧美一区二区日韩| 91老师片黄在线观看| 国产一区91精品张津瑜| 日韩av不卡一区二区| 亚洲精品免费一二三区| 中文字幕乱码亚洲精品一区 | 欧美久久久影院| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 欧美日韩国产一级片| 99久久国产免费看| 国产精品一区久久久久| 日本免费新一区视频| 亚洲一卡二卡三卡四卡无卡久久| 国产精品美女一区二区三区| 久久午夜免费电影| 欧美刺激脚交jootjob| 欧美日韩精品三区| 欧美少妇性性性| 欧美亚洲高清一区二区三区不卡| 99久久精品一区二区| 懂色av一区二区三区免费观看| 韩日av一区二区| 精东粉嫩av免费一区二区三区| 日韩和欧美一区二区| 午夜成人免费电影| 日韩黄色片在线观看| 日本一道高清亚洲日美韩| 丝袜美腿高跟呻吟高潮一区| 爽好多水快深点欧美视频| 三级不卡在线观看| 日韩成人免费看| 日本系列欧美系列| 精品在线你懂的| 韩国三级在线一区| 国产精品1区2区| 国产99久久久国产精品| 成人一级黄色片| av不卡免费在线观看| jiyouzz国产精品久久| 福利一区在线观看| 国产成人精品影视| 99国内精品久久| 色婷婷精品大在线视频| 欧美日韩视频专区在线播放| 91麻豆精品国产91久久久久久| 日韩欧美电影一区| 国产精品天干天干在观线| 亚洲免费在线视频| 午夜精品久久久久久久久| 免费看欧美女人艹b| 国产黄色精品网站| 91猫先生在线| 91精品国产综合久久久蜜臀粉嫩| 日韩精品一区国产麻豆| 欧美国产视频在线| 一区二区三区四区视频精品免费| 日韩专区在线视频| 国产中文一区二区三区| 成人网男人的天堂| 欧美三级韩国三级日本一级| 欧美成人vps| 国产精品福利电影一区二区三区四区| 亚洲自拍与偷拍| 久久99国产乱子伦精品免费| 成人小视频免费观看| 欧美片在线播放| 国产日韩三级在线| 亚洲第一成人在线| 国产精品一区二区三区乱码| 欧洲另类一二三四区| 精品久久久三级丝袜| 亚洲精选视频在线| 久久精品久久综合| 91免费看`日韩一区二区| 精品少妇一区二区三区| 一区二区在线看| 国产精品亚洲视频| 69精品人人人人| 中文字幕在线不卡一区 | 亚洲欧美色一区| 九九**精品视频免费播放| 色婷婷久久99综合精品jk白丝| 精品国产露脸精彩对白| 亚洲综合色在线| 成人综合在线视频| 日韩欧美亚洲国产另类| 亚洲国产精品一区二区久久| 成人一级片在线观看| 日韩欧美精品三级| 亚洲成人动漫一区| 一道本成人在线| 国产欧美视频在线观看| 免费的国产精品| 欧美三级日韩三级| 亚洲欧美一区二区三区久本道91 | 国产精品护士白丝一区av| 乱一区二区av| 欧美麻豆精品久久久久久| 一区二区三区在线高清| 91视频免费看| 中文字幕国产一区| 国产一区在线视频| 欧美一区二区黄| 亚洲成a人v欧美综合天堂| 在线观看中文字幕不卡| 国产精品成人免费| www.色综合.com| 国产日韩综合av| 国产成人欧美日韩在线电影| 日韩久久久久久| 久久99久久99精品免视看婷婷| 欧美一级片在线看| 日韩二区三区四区| 欧美精品免费视频| 日韩**一区毛片| 欧美疯狂做受xxxx富婆| 午夜欧美2019年伦理| 欧美三区免费完整视频在线观看| 一区二区成人在线| 欧美日韩免费视频| 日韩精品一卡二卡三卡四卡无卡| 欧美久久高跟鞋激| 美国欧美日韩国产在线播放| 日韩欧美你懂的| 狠狠色2019综合网| 日本一区二区三区dvd视频在线| 国产一区二区三区在线观看精品| 久久综合九色综合欧美就去吻| 国模冰冰炮一区二区| 日本一区二区三区久久久久久久久不| 丁香另类激情小说| 中文在线免费一区三区高中清不卡| 盗摄精品av一区二区三区| 国产精品麻豆欧美日韩ww| 91视频国产观看| 一级特黄大欧美久久久| 在线不卡免费av| 国产一区视频在线看| 中文字幕精品在线不卡| 91久久精品一区二区三区| 五月综合激情婷婷六月色窝| 欧美一区二区免费视频| 国产一区中文字幕| 亚洲色图欧洲色图| 欧美日韩高清一区二区三区| 奇米777欧美一区二区| 欧美精品一区二区三区在线| av激情亚洲男人天堂| 亚洲aaa精品| 久久久久久久久99精品| 91免费精品国自产拍在线不卡|