

声明:以下知识相关资料来自比特官网和小编手搓~
图的基本概念:++1、图的定义++
++2、有向图和无向图++
++3、简单图与多重图++
++4、稠密图和稀疏图++
++5、顶点的度++
++6、路径++
++7、简单路径与回路++
++8、路径长度和带权路径长度++
++9、子图++
++10、连通图与连通分量++
++11、生成树++
1、图的定义
回顾:前面我们已经学习了一对一、一对多的数据与数据之间的关系,分别是线性表,以及树形结构。
现在我们要学习一个新的数据与数据之间的关系,即多对多,这就是图形结构。
甩来一个官方的定义:
2、有向图和无向图
有向图和无向图的区分条件:就是根据图的边的类型区分的,看顶点和顶点之间的边有没有指向性。
注意:
在有关图的算法题中,常常会将无向图变成有向图,这样,图的存储方式就固定,很方便。
无向图 -> 有向图:将无向图中的边看成两条方向相反的有向边。
3、简单图与多重图
简单图:若图中没有重边和自环,为简单图。
多重图:若图中有重边或自环,为多重图。
自环:自己指向自己的一条边。
重边:图中存在两个或两个以上完全相同的边(全是从同一个顶点指向另一个一样的顶点)
简单图与多重图的整体展示:
4、稠密图和稀疏图
稀疏图:边很少。(e< nlog2n)
稠密图:边相对较多。
5、顶点的度
顶点的度:与顶点相关联的边的条数;由该顶点发出的边叫做顶点的出度,到达该顶点的边叫做顶点的入度。
无向图:顶点的度 = 该顶点的出度;顶点的度 = 该顶点的入度。
有向图:顶点的度 = 该顶点的出度 + 该顶点的入度。
6、路径
图中路径的定义:现有顶点Vi到顶点Vj的题目要求,从Vi到Vj会经过其他顶点,会把从Vi到Vj所包含的所有顶点称为从顶点Vi到顶点Vj的路径,当然包括他两自身。
注意:两个顶点间的路径可能不唯一。
7、简单路径与回路
简单路径:路径上经过的顶点均不重复。
回路:路径上经过的第一个顶点,同样是最后一个经过的点,构成闭环了,所以回路也称环。
8、路径长度和带权路径长度
解释一下带权的意思:和边具有与之相关的数据,这些数据可能是两个顶点之间的距离、花费的代价、所需的时间等,这些数据的具体数值被称为该边的权值。
一般将带权图称为网络。
对于不带权的图:他的路径长度就是始末顶点间的边数之和。对于带权的图:他的路径长度就是始末顶点之间,各个边的权值的和。
9、子图
子图的定义通俗来讲:从原图中,拿出一些顶点和一些边,组成一个新的图。一定要注意,拿出来的组件,最后一定要组成一个图才行!
生成子图:顶点全拿出来,边拿出来一部分就行。
10、连通图与连通分量
基于无向图:
在无向图中,如果两个顶点之间有路径,则称该两顶点是联通的;如果图G中,任意两顶点都是连通的,则称其为连通图,否则就是非连通图。
注意点:
1、顶点有n个,但是边数小于 n-1,那一定是非连通图(树就是最好的临界点:顶点为n,则边数为 n-1)
2、极大连通子图:无向图中,拿出一个子图,这个子图尽可能多的包含顶点和边。
3、连通分量:无向图中的极大连通子图叫做连通分量。
11、生成树
定义:连通图的生成树是包含图中全部顶点的一个极小连通子图。
生成树的定位:图 -> 生成子图 -> 边数最少 & 连通 -> 树。
若顶点有n个,则边数会有 n - 1 个。
对于生成树而言,砍去一条边,会变成非连通图;加上一条边,会形成一个回路。
















