https://osnim.github.io/posts/HOW-to-Solve-DFS-BFS/
Algorithm 3.DFS/BFS - osnim