数据结构--图

本文介绍了图数据结构的基本概念,包括无向图、有向图、连通图、顶点度、路径长度、生成树和连通分量等,并讨论了图的存储表示,如邻接矩阵和邻接表,强调了邻接多重表在处理边信息的优势。
摘要由CSDN通过智能技术生成

图的基本概念:
1)图是由顶点的有穷非空集合顶点之间边的集合组成,通常表示为:G=(V ,E)
其中:G 表示一个图,V 是图G 中顶点的集合,E 是图G中顶点之间边的集合。
2)在图中,顶点个数不能为零,但可以没有边。
3)在图结构中,任意两个顶点之间都可能有关系。
4)在图结构中,顶点之间的关系为邻接
5)若代表一条边的顶点序偶是无序的(即该边无方向),则称此图为无向图。
若代表一条边的顶点序偶是有序的(即边有方向),则称此图为有向图。
6)任何两顶点间都有边相关联的图称为完全图(complete graph),完全图显然具有最大的边数。
7)邻接顶点:如果 (u, v) 是 E(G) 中的一条边,则称 u 与 v 互为邻接顶点。
8)子图:设有两个图G=(V, E)和G‘=(V’, E‘)。若 V’是 V的子集 且 E‘是E的子集, 则称图G’是图G的子图。
9)顶点的度:一个顶点v的度是与它相关联的边的条数。记作TD(v)。在有向图中, 顶点的度等于该顶点的入度与出度之和。
10)路径长度:
非带权图 —— 路径上边的个数
带权图 —— 路径上各边的
11) 连通图:如果图中任意两个顶点都是连通的 , 则称该图是连通图
12)连通分量非连通图极大连通子图称为连通分量 。
极大连通子图:含有极大顶点数;依附于这些顶点的所有边
连通分量是对无向图的一种划分!
12)生成树:n 个顶点的连通图 G的生成树是包含G中全部顶点的一个极小连通子图(含有n-1条边)
生成森林: 在非连通图中 , 由每个连通分量都可以得到一棵生成树 , 这些连通分量的生成树就组成了一个非连通图的生成森林 。

图的抽象数据类型:

class Graph {
    public:
    Graph ( );
    void InsertVertex ( Type & vertex ); // 插入一个顶点
    void InsertEdge ( int v1, int v2, int weight ); // 插入一条边
    void RemoveVertex ( int v ); // 删除一个顶点
    void RemoveEdge ( int v1, int v2 ); // 删除一条边
    int IsEmpty ( ); // 判断图是否为空
    Type GetWeight ( int v1, int v2 ); // 获取边的权重值
    int GetFirstNeighbor ( 
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值