/***
* 图
* 基础知识
* 1.定义:图是由顶点集V和弧集R构成的数据结构,Graph=(V,R)
* <v,w> v表示弧尾,w表示弧头 表示弧
* (v,w) 表示边vw
* 2.有向图:由顶点集合弧集构成的图称为有向图
* 无向图:由顶点集和边集构成的图称为无向图
*
* 3.有向网或无向网:有向图或无向图中的弧或边带权后的图分别称为有向网或无向网
*
* 4. 完全图:图中有n个顶点,n(n-1)/2条 边 的无向图称为完全图
* 有向完全图: 图中有n个顶点,n(n-1)条 弧 的有向图称为有向完全图
* 5.稀疏图:e<nlogn 稀疏图 反之 稠密图
* 6.邻接点:无向图中边边的两点称为邻接点
* 7.连通图及强连通图
* 在无向图中,任意两个顶点之间都有路径想通,则称此图为连通图,否则称非连通图
* 在有向图中,任意两个顶点之间都存在一条有向路径,则称此图为强连通图,否则称非强连通图
*
* 8.生成树
* 包含连通图中全部顶点的极小连通子图称为该图的生成树
*
*
*
* 无向图
* 1.顶点+边集
* 2.度TD=点的度
* 3.存储:邻接矩阵
*
*
* 稀疏图时可用邻接表存储,正常存储邻接矩阵,
*
* 有向图
* 1.顶点+弧集
* 2.点的TD = OD(出度)+ID(入度)
* 3.
*
*
*
* 图的存储结构:
* 1.邻接矩阵
* 2.邻接表
* 3.十字链表
* 4.多重链表
*
* 1.邻接矩阵
*
* 顺序存储结构(数组表示法)
* 优缺点:
* 1.存储无向图时可直接通过当前行内数量计算该点的度TD
* 存储有向图时可通过行列个数相加求得当前点的TD=OD+ID
* 2.对于有向图加权时可直接表示权值,其余均为∞
* 3.无向图的邻接矩阵是稀疏矩阵,故可采用特殊矩阵的压缩存储,即下三角矩阵
*
*
* 2.邻接表
* 链式存储结构
* 顶点采用顺序存储结构,点间为平行关系,无顺序关系
*
* 图中的边或弧远远小于顶点数,即稀疏图时,建议采用邻接表存储
* 优缺点:
* 1.无向图可直接求出度
* 2.有向图要做辅助表---逆邻接表ID,然后相加即为度TD
*
* 3.十字链表
* 链式存储结构
*
* 邻接表和逆邻接表的结合
* 主要用于有向图
*
* 4.多重链表
* 链式存储结构
* 适用于无向图的链式存储结构
*
* /
web_structure
最新推荐文章于 2022-08-11 12:27:19 发布