Depth-First Search
     
   Step-by-Step Animation   Animation Speed 
Elaboration:
?
Depth-First Search(DFS): DFS is a graph algorithm that is able to visit every node and every edge given a starting node. With that being said, the time complexity of using DFS to traverse the entire graph is O(|V| + |E|) where V is the number of nodes and E is the number of edges.
Pseudocode:
def DFS(n):
  mark n as visited
  for each edge of n:
    if edge->to_node is not visited: DFS(to_node)
Input Explanations:
1. starting node: The starting node to begin the traversal
2. ending node: This is an optional input. If this is specified DFS will try to find a path between the starting node and ending node

深度优先搜索定义:深度优先搜索属于图算法的一种,是一个针对图和树的遍历算法,利用深度优先搜索算法可以产生目标图的相应拓扑排序表,利用拓扑排序表可以方便的解决很多相关的图论问题,如最大路径问题等等。一般用堆数据结构来辅助实现DFS算法。其过程简要来说是对每一个可能的分支路径深入到不能再深入为止,而且每个节点只能访问一次。
按键说明:Run DFS:从输入的起始顶点开始,沿着一条路一直走到终止节点,然后从这条路尽头的节点回退到上一个节点,再从另一条路开始走到底...,不断递归重复此过程,直到所有的顶点都遍历完成