Graph is a fundamental data structure used in computer science and mathematics to represent relationships between objects. It consists of a set of vertices (also known as nodes) connected by edges. In this article, we will explore the concept of graphs and discuss the different types of graphs commonly used in data structures.

## Graph: An Overview

A graph is defined as G = (V, E), where V represents the set of vertices/nodes and E represents the set of edges connecting these vertices. The edges can be directed or undirected, depending on whether they have a specific direction or not.

In a graph, each vertex can be connected to multiple other vertices through edges, forming various relationships. These relationships can represent connections between people in a social network, links between web pages on the internet, dependencies between tasks in project management, and much more.

## Types of Graphs

There are several types of graphs commonly used in data structures. Let’s explore some of them:

### 1. Undirected Graph

An undirected graph is a type of graph where the edges have no direction associated with them. This means that if there is an edge connecting vertex A to vertex B, there is also an edge connecting vertex B to vertex A.

**Example:**

__V___{1}–__V___{2}__V___{1}–__V___{3}__V___{2}–__V___{3}__V___{3}–__V___{4}

### 2. Directed Graph (Digraph)

A directed graph is a type of graph where the edges have a specific direction associated with them. This means that if there is an edge connecting vertex A to vertex B, there might not be an edge connecting vertex B to vertex A.

**Example:**

__V___{1}->__V___{2}__V___{1}->__V___{3}__V___{2}->__V___{3}__V___{3}->__V___{4}__V___{4}->__V__