一.图的基本概念
学习数据与算法结构第六天
- 图的构成:
一个图是由两个集合:V和E所组成的,V是有限的非空项集合,E是用顶点对表示边集合,图G的顶点集和边集分别记为V(G)和E(G),而将图G表示为G=(V,E)也就是说,决定一个图需要知道它的顶点集合与边集合。
2.无向图与有向图
区别:边是否带方向
3.顶点的度
无向图:一个图顶点的度,是关联它的边的数量
有向图:分为入度(进来的线),出度(从本身出发的线)
4.子图
如果一个图A的所有的顶点集与所有的边集都被图B所包含,则图A是图B的子图
如果一个图A的所有的顶点集与所有的边集都被图B所包含(除了一模一样),则图A是图B的真子图
5.完全图
无向完全图:每个顶点之间都有一条线相连
有向完全图:每个顶点之间都有两条有向线相连
6.路径:由边所组成
7.回路:有线组成的闭合的圈称
简单回路:不走重复点,只有首尾相同。
8.连通图和连通分量
无向图:两个顶点之间有路径
有向图强联通图:任意一个点都可以沿着线(可经过点)到达任意一个其他点
单向连通图:两个顶点之间有路径
一个图被分离成好几个不连通的图,每一个不连通的图被称为连通分量
9.网络
图加上权值(边的权值)
10.图的存储
邻接矩阵:几个顶点就几阶矩阵
无向图:两个点之间有边就为1,没有边就为0,为方便存储一般只写倒三角。
无向图:两个点之间有边就为1,没有边就为-1,剩余情况则为 0
11.邻接表
又称邻接链表
它首先把每个顶点的邻接顶点用链表示出来,n个顶点就有n个链表