数据结构-图

来源:互联网 发布:怎么举报一个软件 编辑:程序博客网 时间:2024/04/29 23:31

一、图的基本概念

(1)图的表示:图G由两个集合V和E组成,记为G = ( V , E ),V是顶点的 有穷 非空 集合,E是 边 的 有穷 集合。

(2)弧:有向边

          弧尾:有向边的始点;

          弧头:有向边的终点。

(3)如果限定 “顶点不能指向自己”,则:

         一个有向图至多有n(n-1)条弧,这样的有向图称为有向完全图

         一个无向图至多有n(n-1)/2条边,这样的无向图称为无向完全图

(4)一个顶点的度:等于与其相邻接的顶点个数;

          一个顶点的出度:等于其所指向的顶点的个数;

          一个顶点的入度:等于其被指向的顶点的个数。

(5)路径长度:路径长度的具体含义取决于边上权值所代表的意义;

                          若是不带权的图,则路径长度 为 顶点A到顶点B的边的个数

                          若是带权的图,则路径长度为路径上各边的权值之和

                         若G是有向图,则路径也是有向的

(6)最短路径:两个顶点间长度最短的路径

(7)强连通图:若对于  有向G  中的 任意 两个顶点A和B,都存在  从A到B  及  从B到A  的路径

(8)子图:有两个图G1=(V1,E1) 和G2=(V2,E2),若  V2属于V1   且   E2属于E1 ,则G2为G1的子图。

二、图的存储结构

(1)邻接矩阵:反映顶点间的邻接关系

           设G是具有n个顶点的图(n>=1),

          G的邻接矩阵M是一个n行n列的矩阵,

         若(i,j)属于E,则M[i][j]=1,否则为0。

         无向图的邻接矩阵是对称的。

        有向图的邻接矩阵不一定是对称的。

(2)邻接表:为图的每个顶点建立一个链表;

               这n个链表的头指针存储在地址连续的存储单元中;

        

三、最小代价生成树(简称最小生成树)

(1)G的生成树:一棵包含G所有顶点的树;

                             从不同的顶点出发进行遍历,可以得到不同的生成树

                            含有n个顶点的联通图的生成树有n个顶点 和 n-1 条边

(2)树的代价:各条边的权值之和

(3)最小生成树:代价最小的生成树。


原创粉丝点击