问答题 对于下图G,按下列条件试分别写出从顶点0出发按深度优先搜索遍历得到的顶点序列和按广度优先搜索遍历得到的顶点序列。
【正确答案】对一个图进行遍历而得到的遍历序列不唯一的因素有许多:
首先,遍历的出发顶点的选择不唯一,而得到的遍历序列显然也不是唯一的。即使遍历的出发顶点相同,采用的遍历方法若不相同,得到的结果也是不相同的。
其次,即使遍历的出发顶点相同,并且采用同一种遍历方法,若图的存储结构不相同,则得到的结果也可能是不相同的。例如,对于邻接表结构而言,建立邻接表时提供边的信息的先后次序不同,边结点的链接次序也不同,从而会建立不同的邻接表;同一个图的不同邻接表结构会导致不同的遍历结果。本题中导致对一个图进行遍历而得到的遍历序列不唯一的因素都确定下来,那么遍历序列就唯一确定下来。
(1)采用邻接矩阵表示得到的顶点序列,邻接矩阵如下所示:

①采用邻接矩阵进行深度优先遍历,在一个结点连接多个结点时,优先选择序号较小的结点;然后按深度优先遍历算法完成遍历。
②在本题给出的图G中,深度优先遍历的顺序为:0→1→2→8→3→4→5→6→7→9。
采用邻接矩阵进行广度优先遍历,在一个节点连接多个结点时,优先选择序号较小的结点;然后按广度优先遍历算法完成遍历。
在本题给出的图G中,深度优先遍历的顺序为:0→1→4→2→7→3→8→6→5→9。
(2)采用邻接表表示得到的顶点如下所示:
【答案解析】