图的基本概念以及特殊形态的图(C语言)
Posted bfhonor
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了图的基本概念以及特殊形态的图(C语言)相关的知识,希望对你有一定的参考价值。
一、图的基本概念
(一)图的定义
- 图G由顶点集V和边集E组成,记为G = (V, E),其中V(G)表示图G中顶点的有限非空集;
- E(G)表示图G中顶点之间的关系(边)集合。
- 若V = {v1, v2, … , vn},则用|V|表示图G中顶点的个数,也称图G的阶,E = {(u, v) | uÎ∈V, v∈V},用|E|表示图G中边的条数。
- 注意:线性表可以是空表,树可以是空树,但图不可以是空,即V一定是非空集
(二)无向图、有向图
- 若E是无向边(简称边)的有限集合时,则图G为无向图。边是顶点的无序对,记为(v,w)或(w, v),因为 (v,w) = (w, v) ,其中v、w是顶点。可以说顶点w和顶点v互为邻接点。边(v, w)依附于顶点w和v,或者说边(v, w)和顶点v、w相关联。
- G2 = (V2, E2)
- V2 = {A, B, C, D, E}
- E2 = {(A, B), (B, D), (B, E), (C, D), (C, E), (D, E)}
- 若E是有向边(也称弧)的有限集合时,则图G为有向图。
- 弧是顶点的有序对,记为<v,w>,其中v、w是顶点,v称为弧尾",w称为弧头,<v, w>称为从顶点v到顶点w的弧,也称v邻接到w,或w邻接自v。 <v,w> ≠ <w, v>
- G1 = (V1, E1)
- V1 = {A, B, C, D, E}
- E1 = {<A, B>, <A, C>, <A, D>, <A, E>, <B, A>, <B, C>, <B, E>, <C, D>}
(三)简单图、多重图
(四)顶点的度、入度、出度
- 对于无向图:顶点v的度是指依附于该顶点的边的条数,记为TD(v)。
- 在具有n个顶点、e条边的无向图中,
- 即无向图的全部顶点的度的和等于边数的2倍
- 对于有向图:
①、入度是以顶点v为终点的有向边的数目,记为ID(v);
②、出度是以顶点v为起点的有向边的数目,记为OD(v)。
③、顶点v的度等于其入度和出度之和,即TD(v) = ID(v) + OD(v)。 - 在具有n个顶点、e条边的有向图中,
(五)顶点—顶点的关系描述
- 路径——顶点vp到顶点vq之间的一条路径是指顶点序列 , vp,vi,…,vim,vq。
- 回路——第一个顶点和最后一个顶点相同的路径称为回路或环。
- 简单路径——在路径序列中,顶点不重复出现的路径称为简单路径。
- 简单回路——除第一个顶点和最后一个顶点外,其余顶点不重复出现的回路称为简单回路。
- 路径长度——路径上边的数目。
- 点到点的距离——从顶点u出发到顶点v的最短路径若存在,则此路径的长度称为从u到v的距离。若从u到v根本不存在路径,则记该距离为无穷(∞)。
- 无向图中,若从顶点v到顶点w有路径存在,则称v和w是连通的
- 有向图中,若从顶点v到顶点w和从顶点w到顶点v之间都有路径,则称这两个顶点是强连通的
(六)连通图、强连通图
(七)子图
1. 无向图
2. 有向图
(八)连通分量
- 子图必须连通,且包含尽可能多的顶点和边。
- 无向图中的极大连通子图称为连通分量。
(九)强连通分量
- 子图必须强连通,同时保留尽可能多的边。
- 有向图中的极大连通子图称为有向图的强连通分量。
(十)生成树
- 边尽可能的少,但要保持连通
- 连通图的生成树是包含图中全部顶点的一个极小连通子图。
- 若图中顶点数为n,则它的生成树含有 n-1 条边。对生成树而言,若砍去它的一条边,则会变成非连通图,若加上一条边则会形成一个回路。
(十一)生成森林
- 在非连通图中,连通分量的生成树构成了非连通图的生成森林。
(十二)边的权、带权图/网
- 边的权——在一个图中,每条边都可以标上具有某种含义的数值,该数值称为该边的权值。
- 带权图/网——边上带有权值的图称为带权图,也称网。
- 带权路径长度——当图是带权图时,一条路径上所有边的权值之和,称为该路径的带权路径长度。
(十三)几种特殊形态的图
- 没有绝对的界限,一般来说|E| < |V|log|V|时,可以将G视为稀疏图
以上是关于图的基本概念以及特殊形态的图(C语言)的主要内容,如果未能解决你的问题,请参考以下文章