Read: Graphs - Goorob-401-advanced-javascript/amman-javascript-401d1 GitHub Wiki
A graph is a non-linear data structure that can be looked at as a collection of vertices (or nodes) potentially connected by line segments named edges.
terminology used when working with Graphs:
Vertex - A vertex, also called a “node”, is a data object that can have zero or more adjacent vertices. Edge - An edge is a connection between two nodes. Neighbor - The neighbors of a node are its adjacent nodes, i.e., are connected via an edge. Degree - The degree of a vertex is the number of edges connected to that vertex.
- An Undirected Graph is a graph where each edge is undirected or bi-directional. This means that the undirected graph does not move in any direction.
- A Directed Graph also called a Digraph is a graph where every edge is directed.
- A complete graph is when all nodes are connected to all other nodes.
- A connected graph is graph that has all of vertices/nodes have at least one edge.
- A disconnected graph is a graph where some vertices may not have edges.
- An acyclic graph is a directed graph without cycles.
- A Cyclic graph is a graph that has cycles.