Graph Basics
Graph data structure is an important data structure, this is also an underlying data structural basis in many research areas of Computer Science (Knowledge Graphs, Social Networks, etc)
Graph has some nodes/vertices which may be connected to each other with some edges (which can be directional, non directional, weighted, non weighted etc)
Infact any dynamic programming problem can be modulated as a graph problem
Graph is generally represented using adjacency matrix or adjaceny list or edge list