1.介绍
深度优先搜索属于图算法的一种,英文缩写为DFS即Depth First Search.其过程简要来说是对每一个可能的分支路径深入到不能再深入为止,而且每个节点只能访问一次。
2.图例
对于这样一个图来说,假设起点为1,则深度优先遍历的遍历结果为1->2->4->5->3->6
解释
因为DFS搜索是对每一个分支路径深入到不能深入为止
所以第一步:从1->2->4,然后到了叶子节点,不能再深入了。
第二步:节点4回溯到节点2。
第三步:节点2发现还有节点5没有遍历到,于是深入到节点5。
第四步:节点5发现自己是叶子节点,没有办法深入了,于是回溯到节点2。
第五步:节点2发现节点4和节点5都已经遍历过了,于是自己的任务完成了,于是回溯到根节点1。
第六步:根节点1发现自己的儿子节点还有节点3没有遍历,于是深入到节点3。
第七步: