# What Is Graph in Data Structure Geeksforgeeks?

//

Heather Bennett

Data Structures are an essential part of computer science. They allow us to efficiently store and organize data for various operations.

One such data structure is a graph. In this article, we will dive deep into the world of graphs and understand their significance in data structures.

## What is a Graph?

A graph is a non-linear data structure consisting of nodes or vertices connected by edges. It is used to represent relationships between different entities. Think of it as a network where each node represents an entity, and the edges represent the connections between them.

## Types of Graphs

There are several types of graphs, each with its own unique characteristics:

• Undirected Graph: In this type of graph, the edges have no direction. The connection between nodes is bidirectional.
• Directed Graph: Also known as a digraph, this type of graph has directed edges. The connection between nodes has a specific direction.
• Weighted Graph: In this type of graph, each edge has a weight or value associated with it.
• Cyclic Graph: A cyclic graph contains at least one cycle, which means you can traverse through the nodes and come back to the starting node.
• Acyclic Graph: An acyclic graph does not contain any cycles.

## Graph Representation

A graph can be represented in multiple ways:

• Adjacency Matrix: This representation uses a matrix to store the connections between nodes. The matrix size is N x N, where N is the number of nodes in the graph.
• Adjacency List: In this representation, each node is associated with a list of its neighboring nodes. It is more space-efficient than the adjacency matrix for sparse graphs.

## Graph Operations

Graphs support a variety of operations:

• Add Edge: Connect two nodes by adding an edge between them.
• Delete Node: Remove a node and all its associated edges from the graph.
• Delete Edge: Remove an edge connecting two nodes from the graph.
• Traversal: Visit all the nodes in the graph, either in depth-first or breadth-first order.

## Applications of Graphs

Graphs have numerous applications in various fields:

• Social Networks: Graphs are used to represent connections between individuals in social networks like Facebook or LinkedIn.