• Post category:StudyBullet-9
  • Reading time:6 mins read


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

What you will 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

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


Get Instant Notification of New Courses on our Telegram channel.


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.

English
language

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