# Graph Theory and it’s Algorithms

Learn the concepts of Graph Theory, it’s Algorithms and Implement them in Python

**Language**: english

**Note**: 4.2/5 (4 notes) 3,787 students

**Instructor(s)**: Sujithkumar MA

**Last update**: 2022-07-07

## What you’ll learn

- Understand the Graph Data Structure and Know how to implement it
- Understand the algorithms of Graph Theory
- Know the concepts of Graph Theory
- Learn the Python implementation of Graph Algorithms

## Requirements

- No. But a knowledge in Basic Data Structures is preferred.

## Description

I welcome you all to my course on ‘Graph Theory and it’s Algorithms – Advanced DSA’

This course deals with the concepts of Graph Theory such as

1. What is Graph Data Structure?

2. Applications of Graphs to solve real life problems.

3. Terminologies involved in Graph Theory

4. Types of Graph Data Structure – Weighted, Unweighted, Directed, Undirected, Cyclic, Acyclic, Directed Acyclic Graphs.

This course also gives the explanation of the following algorithms and also provide their implementation in Python.

1. Representation of Graphs – Adjacency List, Adjacency Matrix.

2. Implementation of Adjacency List, Adjacency Matrix using OOPS in Python.

3. Depth First Search (DFS) Algorithm in Python

4. Breadth First Search (BFS)

5. Problems based on DFS – Topological Sort, Sum, Max, Min.

Single Source Shortest Path Problems.

1. Djikstra’s Algorithm – Algorithm and Code in Python.

2. Bellman Ford – Algorithm and Code in Python.

Minimum Spanning Tree Problems

1. Explanation of Spanning Trees, Finding out Minimum Spanning Tree.

2. Prim’s and Kruskal’s Algorithm.

Note: Knowledge in Basic Data Structures and Python is preferred.

A graph data structure consists of a finite (and possibly mutable) set of vertices (also called nodes or points), together with a set of unordered pairs of these vertices for an undirected graph or a set of ordered pairs for a directed graph. These pairs are known as edges (also called links or lines), and for a directed graph are also known as edges but also sometimes arrows or arcs. The vertices may be part of the graph structure, or may be external entities represented by integer indices or references.

## Who this course is for

- Beginner Programmers
- Beginner DSA Learners

## Course content

- Introduction
- Introduction
- What is a graph, Applications of graphs
- Graph Terminologies
- Weighted and unweighted graphs
- Cyclic and Acyclic Graphs
- Directed, Undirected, DAG Graphs

- Prerequisites – Recursion
- Understanding Recursion with an example
- Example 2 for Recursion – Tracing the output
- Tricks to write recursive functions !
- How to convert an iterative solution into a recursive solution

- Implementation of Graphs
- Adjacency Lists Representations of a Graph
- Adjacency Matrix Representation of a Graph
- Implementation of a Graph

- Graph Traversal Algorithms
- Depth First Search (DFS) – Algorithm
- Code for DFS
- Tracing the code for DFS
- Breadth First Search (BFS) Algorithm
- Code for BFS

- Problems based on Depth First Search (DFS)
- The concept of Topological Sort
- Implementation of TSS
- Code for Topological Sort
- Sum of all the nodes in a graph
- Maximum of all the nodes in the graph
- Minimum of all the nodes in a graph

- Single Source Shortest Path Algorithms
- Single Source Shortest Path Problems – Intro
- Djikstra’s Algorithm – I
- Djikstra’s Algorithm – II
- Example 1 – Djikstra’s Algorithm
- Code for Djikstra’s Algorithm’
- Bellmann Ford Algorithm
- Dry run of Bellman Ford Algorithm
- Code for Bellman Ford Algorithm

- Minimum Spanning Trees
- Minimum Spanning Tree
- Prim’s Algorithm

**Time remaining or 377 enrolls left**

Don’t miss any coupons by joining our Telegram group |