📄 源代码7.14.txt
字号:
#include<iostream>
using namespace std;
typedef struct ArcNode
{
int adjvex;
struct ArcNode *nextarc;
}ArcNode;
typedef struct VNode
{
char name[10];
int data;
ArcNode *firstarc;
}VNode,AdjList[30];
typedef struct
{
AdjList vertices;
int vexnum,arcnum;
int kind;
}ALGraph;
int InitGraph(ALGraph &g)
{
int i;
for(i=0;i<30;i++)
g.vertices[i].firstarc=NULL;
return 1;
}
int Greate(ALGraph &g)
{
int i,j,k,start,end,vec;
ArcNode *temp;
cout<<"输入顶点个数和边数:";
cin>>g.vexnum>>g.arcnum;
for(i=1;i<=g.vexnum;i++)
{
cout<<"输入第"<<i<<"节点的内容";
cin>>vec;
cin>>g.vertices[i].name;
g.vertices[i].data=vec;
}
for(i=1;i<=g.arcnum;i++)
{
cout<<"输入第"<<i<<"条边";
cin>>start>>end;
temp=new ArcNode;
temp->adjvex=end;
temp->nextarc=g.vertices[start].firstarc;
g.vertices[start].firstarc=temp;
temp=new ArcNode;
temp->adjvex=start;
temp->nextarc=g.vertices[end].firstarc;
g.vertices[end].firstarc=temp;
}
return 1;
}
int PrintGraph(ALGraph g)
{
int i;
ArcNode *temp;
for(i=1;i<=g.vexnum;i++)
{
temp=g.vertices[i].firstarc;
while(temp!=NULL)
{
cout<<g.vertices[i].name<<"->"<<g.vertices[temp->adjvex].name<<" ";
temp=temp->nextarc;
}
cout<<endl;
}
return 1;
}
int main()
{
ALGraph g;
InitGraph(g);
Greate(g);
PrintGraph(g);
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -