c语言数据结构

c语言数据结构归并排序怎么打了不排序的,新手求解
2025-06-28 05:47:10
推荐回答(1个)
回答1:

#include#include#defineINFINITY0#defineMAX_VERTEX_NUM10//最大顶点数#defineMAX_EDGE_NUM40//最大边数typedefenum{DG,DN,UDG,UDN}Graphkind;typedefcharVertexType;//顶点数据类型typedefstructArcCell{intadj;//无权图,1或0表示相邻否;带权图则是权值。//int*info;}ArcCell,AdjMatrix[MAX_VERTEX_NUM][MAX_VERTEX_NUM];typedefstruct{VertexTypevexs[MAX_VERTEX_NUM];//顶点向量AdjMatrixarcs;//邻接矩阵intvexnum,arcnum;//图的当前顶点数和弧数。Graphkindkind;}MGraph;intLocateVex(MGraphG,VertexTypev1){inti;for(i=0;i>G.vexnum;cout>G.arcnum;for(inti=0;i>G.vexs[i];}for(i=0;i>v1>>v2;cout>w;i=LocateVex(G,v1);j=LocateVex(G,v2);G.arcs[i][j].adj=w;G.arcs[j][i].adj=G.arcs[i][j].adj;}return1;}voiddispMGraph(MGraphG){cout#include#defineMAX_VERTEX_NUM20//最大顶点数#defineMAX_EDGE_NUM40//最大边数intvisited[MAX_VERTEX_NUM];typedefintVertexType;//顶点数据类型typedefstructArcNode{intadjvex;intweight;structArcNode*nextarc;}ArcNode;typedefstructVNode{VertexTypedata;ArcNode*firstarc;}VNode,AdjList[MAX_VERTEX_NUM];typedefstruct{AdjListvertices;intvexnum,arcnum;intkind;}ALGraph;voidCreateDG(ALGraph&G){inti,j,k;ArcNode*p;cout>G.vexnum;cout>G.arcnum;cout>i>>j;p=(ArcNode*)malloc(sizeof(ArcNode));p->adjvex=j;p->nextarc=G.vertices[i].firstarc;G.vertices[i].firstarc=p;}}voidDisp(ALGraphG){inti,j;ArcNode*p;coutnextarc;j=1;}if(j==1)coutadjvex])dfs(G,p->adjvex);p=p->nextarc;}return;}voiddfs1(ALGraphG){inti;for(i=0;i>v;cout<<"深度优先序列:";dfs1(G);cout<