赞
踩
图是一种重要的数据结构,它由顶点和顶点之间的边组成。图广泛应用于计算机科学、工程、数学和其他领域,用于表示和解决各种复杂问题。
图的基本定义:
边的类型:
按边的方向分类:
按边的权值分类:
邻接矩阵:
#define MAXVEX 100
typedef struct {
int vexs[MAXVEX]; // 顶点表
int arc[MAXVEX][MAXVEX]; // 邻接矩阵
int numVertexes, numEdges; // 图中当前的顶点数和边数
} MGraph;
邻接表:
typedef struct EdgeNode { // 边表结点
int adjvex; // 邻接点域,存储该顶点对应的下标
int weight; // 用于存储权值,对于非网图可以不需要
struct EdgeNode *next; // 链域,指向下一个邻接点
} EdgeNode;
typedef struct VertexNode { // 顶点表结点
int data; // 顶点域,存储顶点信息
EdgeNode *firstEdge; // 边表头指针
} VertexNode, AdjList[MAXVEX];
typedef struct {
AdjList adjList;
int numVertexes, numEdges; // 图中当前顶点数和边数
} GraphAdjList;
度:
路径和回路:
连通性:
图的应用非常广泛,以下是一些常见的应用场景:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。