DFS和BFS输出?

时间:2014-10-22 17:56:40

标签: algorithm graph-algorithm depth-first-search breadth-first-search

所以我对BFS和DFS算法的输出感到困惑。

据我所知,BFS将输入视为G,顶点设为x

输出:返回一个图形,对于G中的每个顶点,都是新图形 具有从顶点x到图中任何其他顶点的最短路径。

是吗?如果没有,那是什么?

DFS怎么样? DFS的输入只是一个图表,是否意味着DFS并不关心你从哪里开始?什么是DFS的输出?

由于

2 个答案:

答案 0 :(得分:2)

我不完全确定你想要的是什么,但我会试一试。

我们说我们有以下图表:

X - 1 - 2 - 3
| \
1  1
|   \
2    2
|     \
3      3

在此图中,X标记我们将开始遍历的节点,数字表示特定节点保存的值。这次X有3个直接相邻的节点,它们都保持值为1。

为了示例,我们假设任何节点都不能遍历两次。我们还假设程序始终打印它所代表的节点的值。

如果没有真正深入了解BFS和DFS的工作方式(根本没有),输出将是这样的:

BFS: X 1 1 1 2 2 2 3 3 3
DFS: X 1 2 3 1 2 3 1 2 3

希望这能回答你的问题。

答案 1 :(得分:0)

DFS是一种图形遍历技术,它将图形和起始顶点(随机)作为输入,并给出一系列顶点作为输出。 序列包含可从起始顶点到达的那些顶点。 即我们发现是否可以从图中的任何其他顶点到达任何顶点?