Graph Algorithms - BFS, DFS, Topological Sort, Decompositoion in strongly Connected Components