图的概念
Graph是由顶点的有穷非空集合和点点之间的边的集合
通常表示G(V,E)
其中G表示一个图
V表示G中顶点的集合vertex
E是图G中边的集合
/没有方向的用();/
/有方向的用<>;/
从一个顶点到一个顶点有方向,称这条边为又向边
,也成为弧
网:带权值的边或者是弧
度:顶点有几个临接点
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{
顶点数组;
};