Traversing & Searching Graphs: Breadth First versus Depth First Searches