深度优先搜索 (DFS)

沿着树的深度遍历节点,尽可能深的搜索分支。当节点所在的边都已被探寻过,搜索将回溯到发现该节点的那条边的起始节点。这个过程一直进行到已发现从源节点可达的所有节点为止。如果还存在未被发现的节点,则选择其中一个作为源节点并重复以上过程,整个进程反复进行直到所有节点都被访问为止。通常用栈或者递归来实现。