数据结构——第七章(图)

本文深入介绍了图的基本概念,包括无向图、有向图、简单图及其特殊类型,如完全图。接着,讨论了图的四种存储结构:邻接矩阵、邻接表、十字链表和邻接多重表。此外,概述了图的遍历方法,如深度优先遍历和广度优先遍历。最后,提到了图的应用,包括最小生成树的普利姆和克鲁斯卡尔算法、最短路径的迪杰斯特拉和弗洛伊德算法以及拓扑排序的概念和算法。
摘要由CSDN通过智能技术生成

1. 图(多对多)

1.1 图的定义

  • 图G由顶点集V和边集E组成,记为G=(V,E)
  • E(G)表示图G中顶点之间的关系(边)集合,用|E|表示图G中边的条数(边)
  • V(G)表示图G中顶点的有限非空集,用|V|表示图G中顶点的个数,也称为图G的阶(顶点)
  • 图:强调顶点集合V要有穷非空

线性表中我们把数据元素叫元素,树中叫结点,图中则称为顶点

1.2 图的基本概念

  • 无向图:无向边的有限集合,边是顶点的无序对,无序偶(v,w),(v,w)=(w,v)w,v互为邻接点
  • 有向图:有向弧的有限集合,弧是顶点的有序对,有序偶<v,w>,v是弧尾,w是弧头,v邻接到w或w邻接自v
  • 简单图:同一条边不同时出现,不存在顶点到自己的边
  • 无向完全图:任意两个顶点之间都存在边 (n个顶点的无向完全图有n(n-1)/2条边)
  • 有向完全图:任意两个顶点之间都存在方向相反的两条弧(n个顶点的有向完全图有 n(n-1)条边)
  • 权和网:图中每条边或弧赋予一定意义的数值,这个数值叫做这条边的权,有权值得图称为带权图,也叫做网
  • 子图:假设有两个图G1=(V1,E1)和G2=(V2,E2),如果 V 2 ⊆ V 1 , E 2 ⊆ E 1 则称G2为G1的子图(subgraph)
  • 连通图:无向图中任意两个顶点都是连通的(n(n-1)/2条边)
  • 连通分量:无向图中的极大连通子图
  • 强连通图:有向图中任意两个顶点是连通的
  • 强连通分量:有向图中的极大连通子图
  • 连通图的生成树:它含有图中全部的n个顶点,但只有足以构成一颗树的n-1条边(反之错误,不一定是生成树)

2. 图的存储结构(前两种重要)

2.1 邻接矩阵(顺序存储 O n 2 )

一个一维数组存储图中的顶点信息,一个二维数组(邻接矩阵)存储图中的边或弧的信息

  • 无向图的邻接矩阵是一个对称矩阵(0表示不存在边,1表示存在边)
  • 判断两个顶点之间是否有边:获取两个点所代表的邻接矩阵位置上的值 0 or 1
  • 判断某个顶点的度:其实就是这个顶点在邻接矩阵中第i行/列的’1’元素之和(无向图)
  • 无向图邻接矩阵
  • 有向图的入度对应列,出度对应行(有向图)
  • 0代表自己到自己,无穷代表没有连线
    有向邻接矩阵

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值