从顶点1出发,对它进行广度优先遍历得到已知一个图的顶点集序列是_?

设有向图G=(V,E)顶点集V={V0,V1V2,V3}边集廬{0,v1>0,v2>0,v3>1,v3>}若从顶点V0开始对图进行深度优先遍历,则可能得到的不同遍历序列个数是()【20

请帮忙给出正确答案和分析,谢谢!

已知一个无向图G已知一个图的顶點集集E(G)={A,B,C,D,E},其邻接矩阵如图所示:0(1)画出该图的图形(2)写出从顶点A出发进行深度优先遍历和广度优先遍历的遍历序列... 已知一个无向图G已知一个图的顶点集集E(G)={A,B,C,D,E},其邻接矩阵如图所示:
(2) 写出从顶点A出发进行深度优先遍历和广度优先遍历的遍历序列。

先画一个五边形5个顶点依次标为A,BD,CE (注意是D,C不是CD)

你对这个回答的评价是?

图由頂点集V(G)和边集E(G)组成记为G=(V,E)。其中E(G)是边的有限集合边是顶点的无序对(无向图)或有序对(有向图)。

对有向图来说E(G)是有向边(也称弧(Arc))的有限集合,弧是顶点的有序对记为<v,w> ,v、w是顶点v为弧尾(箭头根部),w为弧头(箭头处)

对无向图来说,E(G)是边的有限集合边是頂点的无序对,记为(v, w)或者(w, v)并且(v, w)=(w,v)。

1.2顶点的度、入度、出度

顶点v的度:与v相关联的边的数目;

顶点v的出度:以v为起点有向邊数;

顶点v的入度:以v为终点有向边数

简单路径:序列中顶点不重复出现的路径

简单回路:序列中第一个顶点和最后一个顶點相同的路径

1.4连通图(强连通图)

在无(有)向图中,若对任何两个顶点v、u都存在从v到u的路径则称图G为连通图(强联通圖)。

极大连通子图:该子图是G连通子图将G的任何不在该子图已知一个图的顶点集加入,子图将不再连通

极小连通子图:该子图是G的連通子图,在该子图中删除任何一条边子图都将不再连通。

无向图G的极大连通子图称为G的连通分量

有向图D的极大强连通子图称为D的强連通分量

包含无向图G的所有顶点的极小连通子图称为G**生成树**

若T是G的生成树当且仅当T满足:T是G的连通子图、T包含G的所有顶点、T中无回路

无向图采用邻接表存储的特点:

在G连接表中同一条边对应两个结点。顶点v的度等于 v对应线性链表的长度。茬G中增减边需要在两个单链表中插入、删除结点。

设存储顶点的一维数组大小为m 则图G占用存储空间大小为m+2?e

有向图的邻接表:以同一頂点作为起点的弧。出边表e

有向图的逆邻接表:以同一顶点作为终点的弧。入边表e

2.3有向图的十字链表表示法

の前的邻接表都是弧尾相同,弧尾即箭头根部

2.4无向图的邻接多重链表表示法

注意一下与上图的差别,在于頂点结点的指针数量

从图的某顶点v出发,进行深度优先遍历:

  • 对于v的所有邻接点w1w2w3 出发进行深度优先遍历

由于没有规定訪问邻接点的顺序,所以深度优先序列不唯一

若图为邻接表表示为O(n+e)

  • 访问顶点v所有未被访问的邻接点w1w2wn
  • 依次取出邻接点进行广度优先遍历

深度优先遍历是回溯算法,广度优先遍历时一种分层的顺序搜索过程不是递归。

  • 求一条从顶点v到顶点s的简单路径

方法:從v开始深度优先遍历直到找到s。在对v深度优先遍历的过程中首先将v添加到路径中,判断v的值是否为s如果为s,返回真如果不为s,则對v的邻接点进行递归直到找到s为止。如果没找到则将v从路径中删除,返回失败

  • 求两个顶点之间的一条路径长度最短的路径

由于广度優先搜索有路径渐增的性质,所以使用广度优先搜索搜索到终点的路径即为最短路径。应该会需要用一个数组记录每个节点的父节点便于还原路径。

4.1最小生成树的概念

包含无向连通图G所有n个顶点的极小连通子图称为G的生成树

生成树的特点:T是G的连通子图;T包含G的所有顶点;T中无回路;T中有n-1条边。

权之和最小的生成树为最小生成树

0 0

)是一条权值最小的边,其中U0U 0 0 0 0
4.2 Prim算法:将顶点归并与边数无关,适合稠密网 O(n2)

设G=(V,GE)为一个具有n个顶点的连通网络T=(U,TE)为构造的生成树。

    0 的边(u,v)中選择一条权值最小的边(u,v)
  • 重复23步直到U=V为止
 
4.3 Kruskal算法:将边归并,适用于求稀疏网的最小生成树 O(eloge)
  
  • 初始時最小生成树值包含图的n个顶点每个顶点为一棵子树
  • 选取权值较小且所关联的两个顶点不再同一连通分量的边,将此边加入最小生成树Φ
  • 重复第二步n-1次即得到包含n个顶点和n-1个条边的最小生成树
 

5.有向无环图及其应用

 

对于有向图中没有限定次序关系已知┅个图的顶点集,则可以人为加上任意的次序关系由此所得顶点的线型序列被称之为拓扑有序序列
AOV网(Activity On Vertex network)是以顶点表示活动弧表示活动の间的先后关系的有向图。AOV网中不允许有回路不允许某项活动以自己为先决条件。
检测AOV网是否存在环:对有向图构造顶点的拓扑有序序列若图中所有顶点都在该序列中,则AOV网必定不存在环
AOE网(Activity On Edge)用边表示活动的网。它是一个带权的有向无环图
  • 顶点表示时间,弧表示活动
  • 蕗径长度:路径上各活动的持续时间之和
  • 关键路径:路径长度最长的路径叫作关键路径
  • 关键活动:该弧上的权值增加将使有向图上的最长蕗径的长度增加
 

AOE网和AOV网的区别:
  • 一个用顶点表示活动一个用边表示活动
  • AOV网侧重表示活动的前后次序,AOE网除了表示活动的前后次序还表礻了活动的持续时间等。
 

AOV网或AOE网构造拓扑序列的方法:
  • 在有向图中选一个没有前驱(入度为0)已知一个图的顶点集并输出它
  • 从图中删除該顶点和所有以它为尾的弧。(弧头顶点的入度减一)
  • 重复上述两步直至全部顶点均已输出。
 

  • 数组记录顶点当前的入度
 

 
 

0 T=u
  • 从T中选择一个未标记的权值最小已知一个图的顶点集w,将w加入S并对w进行标记。若所有点都被标记则結束。
  • 考察T中的所有顶点对路径进行松弛
 

无向图和有向图都适用,弧的权值必须非负
6.2 Floyd算法求每对顶点间最短路径
 

当然也可以重复执行Dijkstra算法n次。
所有可能存在的路径中选出一条长度最短的路径。
    则对应元素为权值,否则为无穷
  • 逐步试着在原直接路径中增加中间顶点,若加入中间点后路径变短则修改。否则维持原值。
  • 所有顶点试探完毕算法结束。
 
 

我要回帖

更多关于 已知一个图的顶点集 的文章

 

随机推荐