stack, graph, dfs, bfs, backtracking dfs