#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 100
#define INFINITY 65535
typedef char VertexType; /*顶点类型char*/
typedef int Arc;/*边的类型int*/
//邻接表的节点
typedef struct AdjListNode_
{
int end; //关联顶点
int weight; //边权重
struct AdjListNode_ *next;
}AdjListNode;
typedef AdjListNode* adjListNodePtr; //结点的指针
typedef struct MGraph
{
VertexType Vexs[MAXSIZE]; /*顶点元素*/
int VexsNum;
adjListNodePtr *headNodeArray; //链表头结点数组
}MGraph;
/*创建无向网图*/
int CreateMGraph(MGraph *G)
{
int i = 0, j = 0, k = 0, weight = 0;
char ch;
printf("请输入顶点数\n");
scanf("%d", &G->VexsNum);
ch = getchar(); //吸收enter
G->headNodeArray = new adjListNodePtr[G->VexsNum]; //初始化头结点数组
for (i=0;i<G->VexsNum;i++)
{
G->headNodeArray[i] = nullptr;
}
/*用户输入,生成顶点数组*/
printf("请输入顶点信息(char类型)\n");
for (i = 0; i < G-&g
图的邻接表存储实现c语言
最新推荐文章于 2024-07-28 22:34:38 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)