This search algorithm is specially designed for graphs and trees.
As you may recall, a Graph is a set of connected nodes where each node is called a vertex and the connection between two of them is called an edge. While a tree is basically the same with the restriction that it should be an undirected graph in which two vertices are connected by exactly one path. So, any acyclic connected graph is a tree.
DFS - Depth-First Search (or Traversal) is a recursive search algorithm that uses backtracking(回溯). It starts from the root of the tree (arbitrary node in the case of graph) and explores as far as possible until all nodes become visited.
The word backtrack means that when you are moving forward and there are no more nodes along the current path, you move backwards on the same path to find nodes to traverse.