如何实现邻接表建立算法的编写?

2026-04-12 01:061阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计258个文字,预计阅读时间需要2分钟。

如何实现邻接表建立算法的编写?

cStatus Create(ALGraph *G) { int i, j, k; char v1[20], v2[20]; ArcNode *p, *q; printf(请输入顶点数和边数:); scanf(%d %d, &G->vertices, &G->arcnum); for(i=0; i vertices; i++) { scanf(%s, G->vertices[i].data); G->vertices[i].firstarc=NULL; } for(k=0; k arcnum; k++) { scanf(%s %s, v1, v2); p=(ArcNode *)malloc(sizeof(ArcNode)); p->adjvex=(int)(strcmp(v1, v2) vertices) : (int)strcmp(v2, G->vertices); p->nextarc=G->vertices[p->adjvex].firstarc; G->vertices[p->adjvex].firstarc=p; q=(ArcNode *)malloc(sizeof(ArcNode)); q->adjvex=(int)(strcmp(v2, v1) vertices) : (int)strcmp(v1, G->vertices); q->nextarc=G->vertices[q->adjvex].firstarc; G->vertices[q->adjvex].firstarc=q; } return 1;}

如何实现邻接表建立算法的编写?

Status Create(ALGraph *G) { int i,j,k; char v1[20],v2[20]; ArcNode *p,*q; printf("请输入顶点数和边数:"); scanf("%d%d",&G->vertices,&G->arcnum); for(i=0;i<G->vexnum;i++) { scanf("%s",G->vertices[i].data); G->vertices[i].firstarc=NULL; } for(k=0;k<G->arcnum;k++) { scanf("%s%s",v1,v2); i=LocateVex(*G,v1); j=LocateVex(*G,v2); p=(ArcNode*)malloc(sizeof(ArcNode)); p->nextarc=G->vertices[i].firstarc; G->vertices[i].firstarc=p; p->adjvex=j; q=(ArcNode*)malloc(sizeof(ArcNode)); q->nextarc=G->vertices[j].firstarc; G->vertices[j].firstarc=q; q->adjvex=i; } }

本文共计258个文字,预计阅读时间需要2分钟。

如何实现邻接表建立算法的编写?

cStatus Create(ALGraph *G) { int i, j, k; char v1[20], v2[20]; ArcNode *p, *q; printf(请输入顶点数和边数:); scanf(%d %d, &G->vertices, &G->arcnum); for(i=0; i vertices; i++) { scanf(%s, G->vertices[i].data); G->vertices[i].firstarc=NULL; } for(k=0; k arcnum; k++) { scanf(%s %s, v1, v2); p=(ArcNode *)malloc(sizeof(ArcNode)); p->adjvex=(int)(strcmp(v1, v2) vertices) : (int)strcmp(v2, G->vertices); p->nextarc=G->vertices[p->adjvex].firstarc; G->vertices[p->adjvex].firstarc=p; q=(ArcNode *)malloc(sizeof(ArcNode)); q->adjvex=(int)(strcmp(v2, v1) vertices) : (int)strcmp(v1, G->vertices); q->nextarc=G->vertices[q->adjvex].firstarc; G->vertices[q->adjvex].firstarc=q; } return 1;}

如何实现邻接表建立算法的编写?

Status Create(ALGraph *G) { int i,j,k; char v1[20],v2[20]; ArcNode *p,*q; printf("请输入顶点数和边数:"); scanf("%d%d",&G->vertices,&G->arcnum); for(i=0;i<G->vexnum;i++) { scanf("%s",G->vertices[i].data); G->vertices[i].firstarc=NULL; } for(k=0;k<G->arcnum;k++) { scanf("%s%s",v1,v2); i=LocateVex(*G,v1); j=LocateVex(*G,v2); p=(ArcNode*)malloc(sizeof(ArcNode)); p->nextarc=G->vertices[i].firstarc; G->vertices[i].firstarc=p; p->adjvex=j; q=(ArcNode*)malloc(sizeof(ArcNode)); q->nextarc=G->vertices[j].firstarc; G->vertices[j].firstarc=q; q->adjvex=i; } }