所以我对BFS和DFS算法的输出感到困惑。
据我所知,BFS将输入视为G
,顶点设为x
。
输出:返回一个图形,对于G
中的每个顶点,都是新图形
具有从顶点x
到图中任何其他顶点的最短路径。
是吗?如果没有,那是什么?
DFS怎么样? DFS的输入只是一个图表,是否意味着DFS并不关心你从哪里开始?什么是DFS的输出?
由于
答案 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是一种图形遍历技术,它将图形和起始顶点(随机)作为输入,并给出一系列顶点作为输出。 序列包含可从起始顶点到达的那些顶点。 即我们发现是否可以从图中的任何其他顶点到达任何顶点?