Implemented and tested on a very large graph, the Kosaraju's algorithm to find strongly connected components of a directed graph.
Also modified Dijkstra's algorithm to run in O(m log n) time.