📄 main.cpp
字号:
#include"iostream.h"
#include"stdlib.h"
#include"adj.h"
struct RowColWeight
{
int row;
int col;
int weight;
};
void CreatGraph(AdjTWGraph& G,char V[],int n,RowColWeight E[],int e)
{
for(int i=0;i<n;i++)
G.InsertVertex(V[i]);
for(int k=0;k<e;k++)
G.InsertEdge(E[k].row,E[k].col,E[k].weight);
}
void Printchar(char item)
{
cout<<item<<" ";
}
void main()
{
AdjTWGraph g;
char a[]={'A','B','C','D','E','F','G'};
RowColWeight rcw[]={{0,1,1},{0,2,1},{1,3,1},{1,4,1},{2,5,1},{2,6,1},{1,0,1},{2,0,1}
,{3,1,1},{4,1,1},{5,2,1},{6,2,1}};
int n=7,e=12;
CreatGraph(g,a,n,rcw,e);
int *visited=new int[g.NumOfVertices()];
cout<<"当前的顶点个数为:"<<g.NumOfVertices()<<endl;
cout<<"当前边的条数为:"<<g.NumOfEdges()<<endl;
cout<<"广度优先搜索序列为:";
for(int i=0;i<g.NumOfVertices();i++)
visited[i]=0;
g.BroadFirstSearch(0,visited,Printchar);
cout<<endl;
cout<<"深度优先搜索序列为:";
for(i=0;i<g.NumOfVertices();i++)
visited[i]=0;
g.DepthFirstSearch(0,visited,Printchar);
g.DeleteEdge(0,2);
g.DeleteEdge(2,0);
cout<<"\n\n删除边<0,2>和<2,0>后";
cout<<endl<<"当前的顶点个数为:"<<g.NumOfVertices();
cout<<endl<<"当前边的条数为:"<<g.NumOfEdges()<<endl;
cout<<"非连通图的深度优先搜索序列为:";
g.DepthFirstSearch(Printchar);
cout<<endl;
cout<<"非连通图的广度优先搜索序列为:";
g.BroadFirstSearch(Printchar);
cout<<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -