add bfs & dfs