Summary
This current chapter covers the fundamentals of graphs and introduces terminology and representation. The later sections of this chapter covers searching techniques in graphs using DFS and BFS. This chapter also introduces in-order search in scenarios where nodes are conditionally dependent. The chapter also covers Dijkstra's algorithm widely used to estimate single-source shortest paths regardless of their directions. The concept of MST is introduced with algorithms such as Prim and Kruskal, which are covered to extract MST from a directed and weighted graph. The next chapter will extend of static algorithms to randomized algorithms, and it also introduces the fundamentals of programming.