广度首次遍历指向vs无向图

时间:2016-10-03 17:54:04

标签: breadth-first-search directed-graph

有向和无向图上的bfs如何在实现方面有所不同。

我在网上找到了以下伪代码。我没有无向图。但无法弄清楚如何为有向图实现它。

 frontier = new Queue()
  mark root visited (set root.distance = 0)
  frontier.push(root)
  while frontier not empty {
     Vertex v = frontier.pop()
    for each successor v' of v {
    if v' unvisited {
        frontier.push(v')
        mark v' visited (v'.distance = v.distance + 1)
    }
    }
  }

1 个答案:

答案 0 :(得分:1)

伪代码中的实现是相同的,除了successor的概念对于无向图表意味着邻居而对于 child (或类似的)意味着有向图。