一、什么是图?

  很简单,点用边连起来就叫做图,严格意义上讲,图是一种数据结构,定义为:graph=VE)。V是一个非空有限集合,代表顶点(结点),E代表边的集合。

二、图的一些定义和概念

(a)有向图:图的边有方向,只能按箭头方向从一点到另一点。(a)就是一个有向图。

(b)无向图:图的边没有方向,可以双向。(b)就是一个无向图。

结点的度:无向图中与结点相连的边的数目,称为结点的度。

结点的入度:在有向图中,以这个结点为终点的有向边的数目。

结点的出度:在有向图中,以这个结点为起点的有向边的数目。

权值:边的“费用”,可以形象地理解为边的长度。

连通:如果图中结点UV之间存在一条从U通过若干条边、点到达V的通路,则称UV 是连通的。

回路:起点和终点相同的路径,称为回路,或“环”。

完全图:一个n 阶的完全无向图含有n*(n-1)/2 条边;一个n 阶的完全有向图含有n*(n-1)条边;

    稠密图:一个边数接近完全图的图。

    稀疏图:一个边数远远少于完全图的图。  

强连通分量:有向图中任意两点都连通的最大子图。右图中,1-2-5构成一个强连通分量。特殊地,单个点也算一个强连通分量,所以右图有三个强连通分量:1-2-543

三、图的存储结构

1.二维数组邻接矩阵存储

2.数组模拟邻接表存储

感谢各位与信奥一本通的鼎力相助!

原文地址:https://www.cnblogs.com/SeanOcean/p/10975705.html