在图逻辑结构中,任意两个顶点之间都可能有关系,可用于描述各种复杂的数据对象。
我希望我们后面可以一起解决,七巧板涂色问题,农夫过河问题。
图的逻辑结构
图的定义
图(graph)是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:G=(V,E),其中,G表示一个图,V是顶点的集合,E是顶点之间边的集合。
我们可以看看下面几个图:
无向边,用无序偶对(vi,vj)表示;有向边,用有序偶对<vi,vj>表示。
这里需要注意的是权,在图中,权通常是对边赋予的有意义的数值量,这个在实际应用中,有他的具体含义。
图的基本术语
(1)邻接、依附
在无向图中,对于任意两个顶点vi和vj,若存在边(vi,vj),则称顶点vi和vj,互为邻接点(adjacent),同时称边(vi,vj)依附(adhere)于顶点vi和vj。
在有向图中,对于任意两个顶点vi和vj,若存在狐<vi,vj>,则称顶点vi邻接到vj、顶点vj邻接自vi,同时称弧<vi,vj>依附于顶点vi和vj。在不致混淆的情况下,通常称vj是vi的邻接点。
(2)顶点的度、入度、出度
在无向图中,顶点v的度(degree)是指依附于该顶点的边的个数,记为TD(v)。在具有n个顶点e条边的无向图中,有下式成立:
在有向图中,顶点v的入度(in-degree)是指以该顶点为弧头的弧的个数,记为ID(v);顶点v的出度(out-degree)是指以该顶点为弧尾的弧的个数,记为OD(v)。在具有n个顶点e条边的有向图中,有下式成立:
(3)无向完全图、有向完全图 在无向图中,如果任意两个顶点之间都存在边,则称该图为无向完全图(undirected complete graph)。含有n个顶点的无向完全图有n*(n一l)/2条边。
在有向图中,如果任意两顶点之间都存在方向互为相反的两条弧,则称该图为有向完全图(directed complete graph)。含存n个顶点的有向完全图有n*(n-l)条边。
(4)稠密图、稀疏图
称边数很少的图为稀疏图(sparse graph),反之,称为稠密图(dense graph).
(5)路径、路径长度、回路
(6)简单路径、简单回路
在路径序列中,顶点不重复出现的路径称为简单路径(simple path),除了第一个顶点和最后一个顶点之外,其余顶点不重复出现的回路称为简单回路(simple circuit).
(7)子图
(8)连通图、连通分量
(9)强连通图、强连通分量
后面陆续分享一些图的遍历相关知识