code is as follow:
#include <iostream>
using namespace std;
struct Graph{
char* vexs;
int** arcs;
};
int main(array<System::String ^> ^args)
{
int vertices_count;
cout<<"Create a Graph, and store it in adjacensy matrix:"<<endl;
cout<<"step 1:please input the count of vertex:"<<endl;
cin>>vertices_count;//get vertices_count
//init graph
Graph graph;
char* vexs=new char[vertices_count];
int** arcs=new int*[vertices_count];
for(int i=0;i<vertices_count;i++){
arcs[i]=new int[vertices_count];
}
//get vertices of graph
for(int i=0;i<vertices_count;i++){
cout<<"Please input the "<<vertices_count<< " vertex data:"<<endl;
cin>>vexs[i];
}
//init adjancency matrix
for(int i=0;i<vertices_count;i++){
for(int j=0;j<vertices_count;j++){
arcs[i][j]=0;
}
}
graph.vexs=vexs;
graph.arcs=arcs;
cout<<"Step 2: please input edgs count:"<<endl;
int edgsCount=0;
cin>>edgsCount;
cout<<"Step 3: please input vertices,start vertex and end vertext index included:"<<endl;
for(int i=0;i<edgsCount;i++)
{
int begin,end;
cout<<"input begin vertex index:";
cin>>begin;
cout<<"input end vertex index:";
cin>>end;
arcs[begin][end]=1;
arcs[end][begin]=1;
}
cout<<"Step 4:output the adjacency of the graph:"<<endl;
for(int i=0;i<vertices_count;i++){
for(int j=0;j<vertices_count;j++){
cout<<graph.arcs[i][j]<<"\t";
}
cout<<endl;
}
cout<<"Step 5:release memory....";
for(int i=0;i<vertices_count;i++){
delete[] graph.arcs[i];
}
delete[] graph.arcs;
delete[] graph.vexs;
char in;
cin>>in;
return 0;
}
using namespace std;
struct Graph{
char* vexs;
int** arcs;
};
int main(array<System::String ^> ^args)
{
int vertices_count;
cout<<"Create a Graph, and store it in adjacensy matrix:"<<endl;
cout<<"step 1:please input the count of vertex:"<<endl;
cin>>vertices_count;//get vertices_count
//init graph
Graph graph;
char* vexs=new char[vertices_count];
int** arcs=new int*[vertices_count];
for(int i=0;i<vertices_count;i++){
arcs[i]=new int[vertices_count];
}
//get vertices of graph
for(int i=0;i<vertices_count;i++){
cout<<"Please input the "<<vertices_count<< " vertex data:"<<endl;
cin>>vexs[i];
}
//init adjancency matrix
for(int i=0;i<vertices_count;i++){
for(int j=0;j<vertices_count;j++){
arcs[i][j]=0;
}
}
graph.vexs=vexs;
graph.arcs=arcs;
cout<<"Step 2: please input edgs count:"<<endl;
int edgsCount=0;
cin>>edgsCount;
cout<<"Step 3: please input vertices,start vertex and end vertext index included:"<<endl;
for(int i=0;i<edgsCount;i++)
{
int begin,end;
cout<<"input begin vertex index:";
cin>>begin;
cout<<"input end vertex index:";
cin>>end;
arcs[begin][end]=1;
arcs[end][begin]=1;
}
cout<<"Step 4:output the adjacency of the graph:"<<endl;
for(int i=0;i<vertices_count;i++){
for(int j=0;j<vertices_count;j++){
cout<<graph.arcs[i][j]<<"\t";
}
cout<<endl;
}
cout<<"Step 5:release memory....";
for(int i=0;i<vertices_count;i++){
delete[] graph.arcs[i];
}
delete[] graph.arcs;
delete[] graph.vexs;
char in;
cin>>in;
return 0;
}
点个广告: