add Depth-First Search
add breadth first search