Big O Notation / Analysis Framework to judge and compare different solutions. Resources: time and memory. https://en.wikipedia.org/wiki/Big_O_notation https://www.youtube.com/watch?v=HfIH3czXc-8
Kosaraju's algorithm is a linear time algorithm to find the strongly connected components of a directed graph. https://en.wikipedia.org/wiki/Kosaraju%27s_algorithm
DFS Depth-first search (DFS) is an algorithm for traversing or searching tree or graph data structures. https://en.wikipedia.org/wiki/Depth-first_search