Specifically we'll see how using appropriate data structures will get each of them to run in time big O of m log n, where m is the number of edges in the graph, and n is the number of vertices in the graph. 