Hi,
This is our second stream on Graph Algorithms, where we continued covering the basics. The next stream will be more challenging, as we’ll solve several problems from Codeforces. As mentioned earlier, in future streams, I plan to explain some of the hardest graph problems I’ve ever encountered.
If you’re already at an advanced level, this topic stream is not for you.
Bipartite Graphs
In this section, I discussed bipartite graphs: what they are, the condition for a graph to be bipartite, and how to find the two parts if a graph is bipartite.
Terminology Overview: Walk, Path, and Cycle
To continue our discussion, it’s important to familiarize ourselves with some basic terminology. Here, I define what a walk, a path, and a cycle are.
Find distances and BFS
In this section, we discuss how to find the distance between two vertices in an undirected graph. I first explain the algorithm and then reveal its name—BFS.
Solving a 1600 Difficulty BFS Problem from Codeforces
In this section, we solve a problem that’s perfect for implementing BFS:
https://mirror.codeforces.com/problemset/problem/601/A
I hope this stream and the consequent ones will be helpful. Feel free to criticize. I'll do my best to address any issues.