欢迎来到天天文库
浏览记录
ID:13726432
大小:15.79 KB
页数:4页
时间:2018-07-24
《邻接多重表的实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、韩山师范学院实验题目:邻接多重表算法实现班级:2015级软工班作者:黄俊聪#includeusingnamespacestd;#defineMAX_VERTEX_NUM20#defineOK1#defineERROR0typedefcharInfoType;typedefintStatus;typedefcharVertexType;typedefenum{unvisited,visited}VisitIf;typedefstructEBox{VisitIfmark;intivex,jvex;structEBox*
2、ilink,*jlink;InfoType*info;}EBox;typedefstructVexBox{VertexTypedata;EBox*firstedge;}VexBox;typedefstruct{VexBoxadjmulist[MAX_VERTEX_NUM];intvexnum,edgenum;}AMLGraph;StatusLocateVex(AMLGraphG,charv){inti;for(inti=0;i3、RROR;}StatusCreateAMLG(AMLGraph&G){EBox*p;charv1,v2;inti,j;cout<<"输入总顶点数和总边数:"<>G.vexnum>>G.edgenum;//输入总顶点数和总边数cout<<"输入各点,构造表头结点表:"<>G.adjmulist[i].data;G.adjmulist[i].firstedge=NULL;}cout<<"输入各边,构造邻接多重表:"<4、0;k>v1>>v2;i=LocateVex(G,v1);j=LocateVex(G,v2);p=newEBox;p->ivex=i;p->ilink=G.adjmulist[i].firstedge;p->jvex=j;p->jlink=G.adjmulist[i].firstedge;p->info=NULL;p->mark=unvisited;G.adjmulist[j].firstedge=p;G.adjmulist[i].firstedge=p;}returnOK;}voidPrint5、AMLGraph(AMLGraphG){EBox*p1,*p2;for(intk=0;kilink)if(p1->mark==visited){p1->mark=unvisited;}for(p2=G.adjmulist[k].firstedge;p2!=NULL;p2=p2->jlink)if(p2->mark==visited){p2->mark=unvisited;}}for(inti=0;i6、num;i++){cout<ilink){if(p1->mark==unvisited){cout<<"->";cout<ivex<<""<jvex;p1->mark=visited;}}for(p2=G.adjmulist[i].firstedge;p2!=NULL;p2=p2->jlink){if(p2->mark==unvisited){cout<<"->";cout<7、2->ivex<<""<jvex;p2->mark=visited;}}cout<
3、RROR;}StatusCreateAMLG(AMLGraph&G){EBox*p;charv1,v2;inti,j;cout<<"输入总顶点数和总边数:"<>G.vexnum>>G.edgenum;//输入总顶点数和总边数cout<<"输入各点,构造表头结点表:"<>G.adjmulist[i].data;G.adjmulist[i].firstedge=NULL;}cout<<"输入各边,构造邻接多重表:"<4、0;k>v1>>v2;i=LocateVex(G,v1);j=LocateVex(G,v2);p=newEBox;p->ivex=i;p->ilink=G.adjmulist[i].firstedge;p->jvex=j;p->jlink=G.adjmulist[i].firstedge;p->info=NULL;p->mark=unvisited;G.adjmulist[j].firstedge=p;G.adjmulist[i].firstedge=p;}returnOK;}voidPrint5、AMLGraph(AMLGraphG){EBox*p1,*p2;for(intk=0;kilink)if(p1->mark==visited){p1->mark=unvisited;}for(p2=G.adjmulist[k].firstedge;p2!=NULL;p2=p2->jlink)if(p2->mark==visited){p2->mark=unvisited;}}for(inti=0;i6、num;i++){cout<ilink){if(p1->mark==unvisited){cout<<"->";cout<ivex<<""<jvex;p1->mark=visited;}}for(p2=G.adjmulist[i].firstedge;p2!=NULL;p2=p2->jlink){if(p2->mark==unvisited){cout<<"->";cout<7、2->ivex<<""<jvex;p2->mark=visited;}}cout<
4、0;k>v1>>v2;i=LocateVex(G,v1);j=LocateVex(G,v2);p=newEBox;p->ivex=i;p->ilink=G.adjmulist[i].firstedge;p->jvex=j;p->jlink=G.adjmulist[i].firstedge;p->info=NULL;p->mark=unvisited;G.adjmulist[j].firstedge=p;G.adjmulist[i].firstedge=p;}returnOK;}voidPrint
5、AMLGraph(AMLGraphG){EBox*p1,*p2;for(intk=0;kilink)if(p1->mark==visited){p1->mark=unvisited;}for(p2=G.adjmulist[k].firstedge;p2!=NULL;p2=p2->jlink)if(p2->mark==visited){p2->mark=unvisited;}}for(inti=0;i6、num;i++){cout<ilink){if(p1->mark==unvisited){cout<<"->";cout<ivex<<""<jvex;p1->mark=visited;}}for(p2=G.adjmulist[i].firstedge;p2!=NULL;p2=p2->jlink){if(p2->mark==unvisited){cout<<"->";cout<7、2->ivex<<""<jvex;p2->mark=visited;}}cout<
6、num;i++){cout<ilink){if(p1->mark==unvisited){cout<<"->";cout<ivex<<""<jvex;p1->mark=visited;}}for(p2=G.adjmulist[i].firstedge;p2!=NULL;p2=p2->jlink){if(p2->mark==unvisited){cout<<"->";cout<7、2->ivex<<""<jvex;p2->mark=visited;}}cout<
7、2->ivex<<""<jvex;p2->mark=visited;}}cout<
此文档下载收益归作者所有