图 基本概念和性质

来源:互联网 发布:java中合法关键字 编辑:程序博客网 时间:2024/04/30 03:27

图是计算机运用中常用到的数据结构,特别是在现实应用中的应用愈发的广泛。比如地图、物流,交通等等。关于图的理论和应用内容很多,而算法也是是层出不穷,图的算法比较的难,实现起来也不太容易。下面就先介绍一些关于图的基本概念和性质。


1、基本概念

:简单的说,图是一个用线或边连接在一起的顶点或节点的集合,严格的说,图是有限顶点V和边E的有序对。


图的表示:一般使用圆圈表示顶点,使用线段表示边,一条边连接两个不同的顶点。有些边是带方向的称为有向边,当顶点v到u含有一条有向边,就画一个箭头从v指向u,使用元组(v,u)表示;而没有方向的边称为无向边,顶点v到u含有一条有向边,就画一条线段从v指向u,使用元组(v,u)表示。例如下面分别是有向图和无向图。


图根据边的分类分为有向图无向图,有向图的边是有向边,它就像公路的单行道一样,只能从一个方向到另一个方向。无向图的边是无向边,当然它就像双向车道一样可以互相到达,而且两个顶点是没有区别的。


当且仅当(u,v)是图的边,称顶点v和u是邻接的。边(u,v)关联于顶点u和v。对于无向图这种邻接和关联是对等的,而有向图是单向的,它仅仅从u到v。


:在图的一些应用中,可能要为每条边赋予一个表示大小的值,这个值就称为权。例如从城市A到城市B存在一条公路,而可以使用权表示这条公路的距离。


路径:一个顶点序列i1,i2........ik是图的一条路径,当且仅当边(i1,i2)(i2,i3).........(ik-1,ik)都在图中。如果除了第一个顶点和最后一个顶点之外,其余的顶点均不相同,那么这条路径称为简单路径。


连通图:设图G是无向图,当且仅当G的每一对顶点之间都有一条路径,则称G是连通图。


子图:如果图H的顶点和边的集合是图G的子集,那么称图H是图G的子图。


生成树:如果图H是图G的子图,且他们的顶点集合相同,并且H是没有环路的无向连通图(即一棵树),则称H是G的一棵生成树。


二分图:图G的顶点被分为两个子集,而且每条边只能从一个子集到另一个子集。例如:


强连通图:图G是一个有向图,当且仅当每一对不同的顶点u,v,从u到v和v到u都有一条有向路径。


2、图的性质

在无向图中,与一个顶点关联的边数称为该顶点的度,一般使用d表示,设G=(V,E)是一个无向图,令n=|V|,e=|E|,

则每个顶点度数之和等于2e;0<=e<=n(n-1)/2。


在有向图中,一个顶点的入度是指关联至该顶点的边数,顶点的出度是指,关联于该顶点的边数。设G=(V,E)是一个无向图,令n=|V|,e=|E|,则图G的每个节点的出度之和和入度之和相等等于e,0<=e<n(n-1)/2



0 0