已知无向图做邻接表 怎样不用输入线段两端的端点 而做一个文件夹放在前面,各位大哥请帮帮忙~
#include<iostream> using namespace std;
const int Max_vertex=8;
const int Max_Edge=11;
int visited[Max_vertex+1];
struct ArcNode
{
int adjvex;
ArcNode *nextarc;
};
struct Vnode
{
int v;
ArcNode *next;
}a[Max_vertex+1];
void creategraph()
{
int i,j,k;
ArcNode *s;
for(i=1;i<=Max_vertex;i++)
{
a[i].v=i;
a[i].next=NULL;
}
for(k=1;k<=Max_Edge;k++)
{
cout<<"input the edge"<<k<<":";
cin>>i>>j;
s=new ArcNode;
s->adjvex=j;
s->nextarc=a[i].next;
a[i].next=s;
s=new ArcNode;
s->adjvex=i;
s->nextarc=a[j].next;
a[j].next=s;
}
}
void display()
{
ArcNode *p;
cout<<"The linklist is:"<<endl;
for(int i=1;i<=Max_vertex;i++)
{
p=a[i].next;
cout<<a[i].v<<"->";
while(p->nextarc!=NULL)
{
cout<<p->adjvex<<"->";
p=p->nextarc;
}
cout<<p->adjvex<<endl;
}
}
void main()
{
creategraph();
display();
system("pause");
}
自动输入的线段两端端点为(1,2)(1,3)(1,4)(2,4)(2,5)(3,4)(3,7)(4,6)(5,6)(6,8)(7,8)
问题补充:
就是做个文件进行调用~~~初学者 不大会 谢谢了~