图的基础知识点

图的概念

Graph是由顶点的有穷非空集合和点点之间的边的集合

通常表示G(V,E)

其中G表示一个图

V表示G中顶点的集合vertex

E是图G中边的集合

/没有方向的用();/
/有方向的用<>;/

从一个顶点到一个顶点有方向,称这条边为又向边
,也成为弧

表示的是vi是弧尾,vj表示的是弧头

网:带权值的边或者是弧

度:顶点有几个临接点

struct node
{
顶点索引;
顶点数据
};
struct map{
顶点数组;
邻接矩阵
};

邻接表:

顶点的表示方法:

顶点索引,出弧链表头指针,顶点数据

弧的表示方法:

弧头顶点索引,下一天弧指针,弧数据;

图:

struct node
{
顶点索引;
该顶点弧链表的头节点;
顶点数据;
};

struct Arc
{
指向的点点索引;
指向下一条弧的指针;
弧信息;
};
struct map
{
顶点数组;
};

十字链表:

顶点的表示方法:

顶点索引,顶点数据,以该顶点为弧尾的弧结点指针,以该顶点为弧头的胡结点指针

弧的表示方法;

弧尾顶点的索引,弧头顶点索引,弧尾相同的下一条弧的指针,弧头相同的下一条弧的指针,弧的数据

struct arc
{
弧为顶点的索引;
弧头顶点的索引;
指向下一条弧头相同的弧的指针;
指向下一条弧尾相同的弧的指针;
弧信息;
};
struct node
{
顶点索引;
顶点数据;
第一条入弧结点指针;
第一条出弧结点指针;
};
struct map{
顶点数组;

};

链式存储(无向图);

顶点的表示方法;

顶点索引;连接该顶点的边;顶点数据;

边的表示方法;

A顶点索引,B顶点索引,与A顶点相连的下一条边的指针,与B顶点相连的下一条边的指针,边数据;

struct egde
{
顶点A索引;
顶点B索引;
连接A的下一条边的指针;
连接B的下一条边的指针;
边信息;
};
struct node
{
顶点索引;
顶点数据;
第一条边结点指针;
};
struct map{
顶点数组;
};

Fork me on GitHub