欢迎来到天天文库
浏览记录
ID:48633143
大小:253.51 KB
页数:16页
时间:2020-01-30
《数据结构(visual c++)用邻接矩阵表示给定无向图并进行深度遍历.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,
2、v2;cout<<"请输入顶点数、弧数:";cin>>G.vexnum>>G.arcnum;cout<<"输入顶点:";for(i=0;i>G.vexs[i];//构造顶点数}for(i=0;i>v1>>v2;i=LocateVex(G,v1);j=LocateVe
3、x(G,v2);G.arcs[i][j]=1;G.arcs[j][i]=1;//置的对称弧}return0;}intLocateVex(MGraph&G,stringu){//确定u在G中序号inti;for(i=0;i4、t<#include#include#includeusingnames5、pacestd;intvisited[30];#defineMAX_VERTEX_NUM30#defineOK1//typedefintVertexType;typedefintInfoType;typedefstructArcNode//弧{intadjvex;structArcNode*nextarc;}ArcNode;typedefstructVNode//表头{intdata;ArcNode*firstarc;}VNode,AdjList[MAX_VERTEX_NUM];typedefstruct//图{AdjListvertices6、;intvexnum,arcnum;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<<"请输入与结点"<7、"相邻的边数:";cin>>v2;cout<<"请输入与第"<>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(A8、rcNode));//动态指针if(!q)exit(-1);q->adjvex=m;//顶点给Pq->nextarc=NULL;p->nextarc=q;p=q;/
4、t<#include#include#includeusingnames
5、pacestd;intvisited[30];#defineMAX_VERTEX_NUM30#defineOK1//typedefintVertexType;typedefintInfoType;typedefstructArcNode//弧{intadjvex;structArcNode*nextarc;}ArcNode;typedefstructVNode//表头{intdata;ArcNode*firstarc;}VNode,AdjList[MAX_VERTEX_NUM];typedefstruct//图{AdjListvertices
6、;intvexnum,arcnum;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<<"请输入与结点"<7、"相邻的边数:";cin>>v2;cout<<"请输入与第"<>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(A8、rcNode));//动态指针if(!q)exit(-1);q->adjvex=m;//顶点给Pq->nextarc=NULL;p->nextarc=q;p=q;/
7、"相邻的边数:";cin>>v2;cout<<"请输入与第"<>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(A
8、rcNode));//动态指针if(!q)exit(-1);q->adjvex=m;//顶点给Pq->nextarc=NULL;p->nextarc=q;p=q;/
此文档下载收益归作者所有