图的数据结构定义

写代码:定义一个顺序存储的图(邻接矩阵实现)
写代码:定义一个链式存储的图(邻接表实现)

自己设计一个不少于6个结点的带权无向图,并画出其邻接矩阵、邻接表的样子
自己设计一个不少于6个结点的带权有向图,并画出其邻接矩阵、邻接表的样子

1.顺序存储的图(邻接矩阵)

#define MaxVertexNum 100//顶点数目的最大值
typedef char VertexType;//顶点对应的数据类型
typedef int EdgeType;//边对应的数据类型
typedef struct{
	VertexType vex[MaxVertexNum];//顶点表
	EdgeType edge[MaxVertexNum][MaxVertexNum];//邻接矩阵,边表
	int vexnum,arcnum;//图的当前顶点数和边数 
	
}MGraph; 

2.链式存储的图(邻接表) 


#define MaxVertexNum 100;//图中顶点数目的最大值
typedef struct ArcNode{//边表结点
	int adjvex;//该弧所指向的顶点的位置 
	struct ArcNode *nextarc;//指向下一条弧的指针
	 //InfoType info;//网的边权值 
}ArcNode;
typedef struct VNode{//顶点表结点 
	VertexType data;//顶点信息
	ArcNode *firstarc;//指向第一条依附该顶点的弧的指针
	 
}VNode,AdjList[MaxVertexNum];
typedef struct{
	AdjList vertices;//邻接表 
	int vexnum,arcnum;//图的顶点数和弧数 
}ALGraph; //ALGraph是以邻接存储的图类型 

3.画图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大晴的上分之旅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值