简介
众所周知图是数据结构中非常重要的一种结构,而且也是比较复杂的。因为在图形结构中,节点间的关系可以是任意的,近几年来图在许多行业迅速发展,所以总的来说掌握图是很重要的。
图的定义和基本操作
顶点(Vertex)——图的数据元素
弧(Arc)——图的边(其中在有向图中有弧头(Head)和弧尾(Tail)即一条边的起点和终点)
无向图——图中的边没有方向的指向
有向图——图中的边有方向
完全图——有1/2*n(n-1)条边的无向图为完全图
有向完全图——有n(n-1)条边的有向图为有向完全图
稀疏图——边数小于nlogn
稠密图——反之
权——图上的边代表的权重
子图——
邻接点——同一条边上的两个点
度——与图上某个顶点相关联的边的个数(在有向图中还区分入度和出度)
路径——从一个顶点到另一个顶点的一个顶点序列(若首尾顶点相同为回路或环)、顶点不重复出现为简单路径其他同理
连通——从一个顶点到另一个顶点有路径则连通、图上任意两点都连通则为连通图
连通分量——无向图中极大连通子图(在加一个点则不为连通图)
强连通图和强连通分量——同理对于有向图而言
生成树——一个极小连通子图(包含所有顶点且n-1条边)