知识要点:
图的各种基本概念和各种存储方式;(邻接矩阵、邻接链表)
图的两种搜索方法和图连的连通性;(深度优先搜索、广度优先搜索)
两种最小生成树的生成方法;(普里姆算法(加点法),克鲁斯卡尔算法(加边法))
各种求最短路径的方法;(迪杰斯特拉算法,弗洛伊德算法)
用顶点表示活动和用边表示活动的两种网络结构特点和相关操作的实现算法。(拓扑排序、AOE网关键路径)
1、图的基本概念
定义:图G由两部分组成,顶点集合V和边集合E,任何一个图都不能为空(即V不能为空E可以为空);
无向图:若E是无向边的集合,此图G为无向图;(边无正向和反向)
有向图:若E是有向边的集合,此图G为有向图;(边存在正向和反向)
简单图:1)不存在重复的边(无平行边) 2)不存在顶点到自身的边(无环) 注多重图的定义与之相反;
子图:若G1图中的点和边在G2图中都有则称G1为G2的子图;(反过来未必成立)
无向完全图和有向完全图:(和图中所有的顶点都产生关联的图)
无向完全图边的个数为n(n-1)/2;有向完全图边的个数为n(n-1);
稠密图和稀疏图:根据边的数目来定义,边多->稠密图、边少->稀疏图;
权和网:边上给予一定的值称为该边的权值,带有权值的图称之为网;
度、入度、出度:
度是指与某一结点相关联的边的数目,称之为该结点的度;入度和出度对应的是有向图中,入度是指以某一结点为头的
边的数目,出度是指以某一结点为尾的边的数目;
性质:1)图中所有顶点的度数总和等于边数目的2倍;//一条边提供2度
2)对于有向图中入度等于出度等于边的数目;
连通、连通图、连通分量:
1)图中任意两个结点之间都存在路径,则此图是连通的,该图称为连通图;
2)连通分量:图中的极大连通子图;
总结:存有路径即连通、全部结点都有路径为连通图、极大连通子图为连通分量;
强连通图和强连通分量:(了解)
针对有向图的连通性,图中v到w和w到v之间都存在有向路径,则称此两结点是强连通的,图中任意顶点都是强连通的
则此图称为强连通图,极大强连通子图称之为强连通分量;
生成树与生成森林:生成树是指使图中全部顶点相互连通的极小连通子图,对于有n个顶点的图,使其连通的最小连通
子图要有n-1条边;如果图本身就是非连通的,则由每一个连通分量生成的各自的生成树称之为生成森林;
路径:是指在连通图中从起点到终点途中所经过的有限顶点序列集合;
路径长度:是指从起点到终点所经历的边的数目;
简单回路或者环:起点和终点相同的路径称之为环或者回路;
简单路径:路径中的顶点不重复出现;简单回路或简单环:除了起点和终点,其余各个顶点都不重复;
总结:极大连通子图对应的是连通分量,极小连通子图