深度优先的总结
深度优先的总体思想是:使用循环加上栈进行求解。栈我们使用递归,系统来实现的,不用我们自己
去实现。我们的重点是如何实现我们的循环过程。我们在递归中去实现我们的循环,把满足条件的
下一个点进行再次的递归,并标记这个点已经被标记。
实现的伪代码:
void grapDFS()
{
定义标记数组并初始化;
DFS();
删除数组;
}
DFS(标记数组,起点)
{
标记起点被使用过;
获得起点的第一个相邻点;
while(存在)
{
判断是否访问过,没有则DFS();
找起点下一个点;
}
}

浙公网安备 33010602011771号