欢迎来到天天文库
浏览记录
ID:50598580
大小:230.50 KB
页数:16页
时间:2020-03-12
《数据结构(visualc++)用邻接矩阵表示给定无向图并进行深度遍历.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、.1.给定无向图,请用邻接矩阵表示法表示该图v4v5v3v2v1#include#includeusingnamespacestd;#defineMAX20typedefintAdj[MAX][MAX];typedefstruct{stringvexs[MAX];//顶点表Adjarcs;//邻接矩阵intvexnum,arcnum;//图的顶点和弧数}MGraph;intLocateVex(MGraph&G,stringu);intCreateUDN(MGraph&G){inti,k,j;stringv1,v2;co
2、ut<<"请输入顶点数、弧数:";cin>>G.vexnum>>G.arcnum;cout<<"输入顶点:";for(i=0;i>G.vexs[i];//构造顶点数}for(i=0;i>v1>>v2;i=LocateVex(G,v1);j=LocateVex(G,v2);G.a
3、rcs[i][j]=1;G.arcs[j][i]=1;//置的对称弧}return0;....}intLocateVex(MGraph&G,stringu){//确定u在G中序号inti;for(i=0;i4、<"";}cout<#include#include#includeusingnamespacestd;intvisi5、ted[30];#defineMAX_VERTEX_NUM30#defineOK1//typedefintVertexType;typedefintInfoType;typedefstructArcNode//弧{intadjvex;structArcNode*nextarc;}ArcNode;typedefstructVNode//表头{intdata;ArcNode*firstarc;}VNode,AdjList[MAX_VERTEX_NUM];....typedefstruct//图{AdjListvertices;intvexnum,arcnum6、;intkind;}ALGraph;voidCreateDG(ALGraph&G){intk,i,v1;cout<>G.vexnum;cout<<"请输入弧的个数:";cin>>G.arcnum;for(i=1;i<=G.vexnum;i++)//初使化表头{G.vertices[i].data=i;G.vertices[i].firstarc=NULL;}for(k=1;k<=G.vexnum;k++)//输入边{intv2;cout<<"请输入与结点"<>v2;cout<<7、"请输入与第"<>v1;ArcNode*p;p=(ArcNode*)malloc(sizeof(ArcNode));if(!p)exit(-1);p->adjvex=v1;p->nextarc=NULL;G.vertices[k].firstarc=p;for(inti=1;i>m;ArcNode*q;q=(ArcNode*)malloc(sizeof(ArcNode));//动态指针if(!q)exit8、(-1);q->adjvex=m;//顶点给Pq->nextarc=NULL;p
4、<"";}cout<#include#include#includeusingnamespacestd;intvisi
5、ted[30];#defineMAX_VERTEX_NUM30#defineOK1//typedefintVertexType;typedefintInfoType;typedefstructArcNode//弧{intadjvex;structArcNode*nextarc;}ArcNode;typedefstructVNode//表头{intdata;ArcNode*firstarc;}VNode,AdjList[MAX_VERTEX_NUM];....typedefstruct//图{AdjListvertices;intvexnum,arcnum
6、;intkind;}ALGraph;voidCreateDG(ALGraph&G){intk,i,v1;cout<>G.vexnum;cout<<"请输入弧的个数:";cin>>G.arcnum;for(i=1;i<=G.vexnum;i++)//初使化表头{G.vertices[i].data=i;G.vertices[i].firstarc=NULL;}for(k=1;k<=G.vexnum;k++)//输入边{intv2;cout<<"请输入与结点"<>v2;cout<<
7、"请输入与第"<>v1;ArcNode*p;p=(ArcNode*)malloc(sizeof(ArcNode));if(!p)exit(-1);p->adjvex=v1;p->nextarc=NULL;G.vertices[k].firstarc=p;for(inti=1;i>m;ArcNode*q;q=(ArcNode*)malloc(sizeof(ArcNode));//动态指针if(!q)exit
8、(-1);q->adjvex=m;//顶点给Pq->nextarc=NULL;p
此文档下载收益归作者所有