資源簡(jiǎn)介
這是一個(gè)關(guān)于圖的建立與遍歷的問題,用的是c++實(shí)現(xiàn),鄰接矩陣作為存儲(chǔ)

代碼片段和文件信息
#include
using?namespace?std;
const?int?maxsize=20;
class?algraph
{
public:
algraph(char?a[]int?nint?e);
void?DFSTraverse(int?v);
void?BFSTraverse(int?v);
private:
char?vertex[maxsize];?????????????//存放頂點(diǎn)的數(shù)組
int?arc[maxsize][maxsize];?????????
int?vertexnum;
int?arcnum;
int?visited[maxsize];??????????????//判斷該點(diǎn)是否已訪問
};
void?main()
{
int?n;
int?e;
char?a[10]={‘0‘‘1‘‘2‘‘3‘‘4‘‘5‘‘6‘‘7‘‘8‘‘9‘};
cout<<“輸入頂點(diǎn)的個(gè)數(shù):“;
cin>>n;
cout<<“輸入邊數(shù):“;
cin>>e;
algraph?A(ane);
cout<<“深度優(yōu)先遍歷\n“;
A.DFSTraverse(0);
cout<<“\n“;
cout<<“廣度優(yōu)先遍歷\n“;
A.BFSTraverse(0);
cout<<“\n“;
}
algraph::algraph(char?a[]int?nint?e)
{
vertexnum=n;
arcnum=e;
for(int?i=0;i {
vertex[i]=a[i];
visited[i]=0;
}
for(int?k=0;k for(int?j=0;j {
arc[k][j]=0;
}
for(int?m=0;m {
int?ij;
cout<<“輸入便的兩個(gè)頂點(diǎn):“;
cin>>i>>j;
arc[i][j]=1;
arc[j][i]=1;
}
}
void?algraph::DFSTraverse(int?v)
{
cout< visited[v]=1;
for(int?j=0;j {
if(arc[v][j]==1?&&?visited[j]==0)
DFSTraverse(j);
}
}
void?algraph::BFSTraverse(int?v)
{
int?frontrear;
front=rear=0;
int?data[maxsize];
for(int?k=0;k {
visited[k]=0;
}
cout< visited[v]=1;
data[++rear]=v;
while(front!=rear)
{
int?j;
j=data[++front];
for(int?i=0;i {
if(arc[j][i]==1?&&?visited[i]==0)
{
cout< visited[i]=1;
data[++rear]=i;
}
}
}
}
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件??????74752??2009-05-09?11:41??圖的建立與遍歷(鄰接矩陣存儲(chǔ))\Debug\vc60.idb
?????文件?????110592??2009-05-09?11:41??圖的建立與遍歷(鄰接矩陣存儲(chǔ))\Debug\vc60.pdb
?????文件?????195820??2009-05-09?11:41??圖的建立與遍歷(鄰接矩陣存儲(chǔ))\Debug\ww.obj
?????文件?????536674??2009-05-09?11:41??圖的建立與遍歷(鄰接矩陣存儲(chǔ))\Debug\圖的建立與遍歷(鄰接矩陣存儲(chǔ)).exe
?????文件?????777296??2009-05-09?11:41??圖的建立與遍歷(鄰接矩陣存儲(chǔ))\Debug\圖的建立與遍歷(鄰接矩陣存儲(chǔ)).ilk
?????文件????2002596??2009-05-09?11:06??圖的建立與遍歷(鄰接矩陣存儲(chǔ))\Debug\圖的建立與遍歷(鄰接矩陣存儲(chǔ)).pch
?????文件????1090560??2009-05-09?11:41??圖的建立與遍歷(鄰接矩陣存儲(chǔ))\Debug\圖的建立與遍歷(鄰接矩陣存儲(chǔ)).pdb
?????文件???????1638??2009-05-09?12:09??圖的建立與遍歷(鄰接矩陣存儲(chǔ))\ww.cpp
?????文件???????4544??2009-05-09?12:09??圖的建立與遍歷(鄰接矩陣存儲(chǔ))\圖的建立與遍歷(鄰接矩陣存儲(chǔ)).dsp
?????文件????????585??2009-05-09?12:09??圖的建立與遍歷(鄰接矩陣存儲(chǔ))\圖的建立與遍歷(鄰接矩陣存儲(chǔ)).dsw
?????文件??????33792??2009-05-09?12:09??圖的建立與遍歷(鄰接矩陣存儲(chǔ))\圖的建立與遍歷(鄰接矩陣存儲(chǔ)).ncb
?????文件??????48640??2009-05-09?12:09??圖的建立與遍歷(鄰接矩陣存儲(chǔ))\圖的建立與遍歷(鄰接矩陣存儲(chǔ)).opt
?????文件????????980??2009-05-09?11:41??圖的建立與遍歷(鄰接矩陣存儲(chǔ))\圖的建立與遍歷(鄰接矩陣存儲(chǔ)).plg
?????目錄??????????0??2009-10-14?18:11??圖的建立與遍歷(鄰接矩陣存儲(chǔ))\Debug
?????目錄??????????0??2009-10-14?18:11??圖的建立與遍歷(鄰接矩陣存儲(chǔ))
-----------?---------??----------?-----??----
??????????????4878469????????????????????15
評(píng)論
共有 條評(píng)論