# Introduction to Graph Algorithms

- Institution: IISc Bangalore
- Department: Computer Science and Engineering
- Teacher: Prof. C Pandu Rangan
- Level: Undergraduate
- Language: English
- Subjects: Computer science, Engineering
- Source: [NPTEL](https://nptel.ac.in/courses/106108468)
- Licence: [CC BY-NC-SA](https://nptel.ac.in/faq) (Non-commercial use only.)
- Syllabus: [at the source](https://nptel.ac.in/courses/106108468)
- Who can watch: Tweens profiles and older (sources give no ratings; placed by Invisible Network from the source's own words)

A Computer is basically an information processing system and this means it can be used for solving only abstract mathematical problems. That is why, solving a Real World Problem (RWP) by using a computer, begins with a formulation of the RWP as a Mathematical problem in an appropriate mathematical domain. For example, privacy and security problems are formulated as cryptographic problems in Number Theory, Elliptic Curves and Linear Algebra.

Mathematical domains such as combinatorics, Geometry, Sets and Relations, Number Theory, Stringology and Graph Theory are among most frequently used domains to arrive at mathematical problems that are equivalent to the real-world problems.

In this course we focus on basic graph algorithms. Problems arising in communication networks, social networks and transportation networks are naturally modelled as problems on graphs. Graph algorithms are among the extensively investigated and applied topics in computer science.

Intended audience: UG/PG Students

Prerequisites: Discrete Mathematics, Graph Theory, Basics of Programming and Data Structures

## Lectures

1. [Introduction and Principles of Algorithms](https://invisiblenetwork.ai/learn/nptel/106108468/bae57e527743) (YouTube)
2. [Principles of Algorithms (Part 2)](https://invisiblenetwork.ai/learn/nptel/106108468/3bfc05fe810b) (YouTube)
3. [Introduction to Graphs](https://invisiblenetwork.ai/learn/nptel/106108468/531e2dc5269b) (YouTube)
4. [Undirected Graph](https://invisiblenetwork.ai/learn/nptel/106108468/f062f9cec7aa) (YouTube)
5. [Algorithms for finding Shortest Path](https://invisiblenetwork.ai/learn/nptel/106108468/ea422f62ae24) (YouTube)
6. [Algorithms for finding Shortest Path Part 2](https://invisiblenetwork.ai/learn/nptel/106108468/68de8f94938a) (YouTube)
7. [Single source shortest path problem](https://invisiblenetwork.ai/learn/nptel/106108468/4f0dae3ad2cb) (YouTube)
8. [Properties of shortest path distances](https://invisiblenetwork.ai/learn/nptel/106108468/edab648851f1) (YouTube)
9. [Properties of shortest path distances Part 2](https://invisiblenetwork.ai/learn/nptel/106108468/9b3509513160) (YouTube)
10. [Belman Equation](https://invisiblenetwork.ai/learn/nptel/106108468/5a5e3c553a6b) (YouTube)
11. [Shortest Path Trees](https://invisiblenetwork.ai/learn/nptel/106108468/358c08521c6f) (YouTube)
12. [Bounded Walks and Paths](https://invisiblenetwork.ai/learn/nptel/106108468/edc822d72713) (YouTube)
13. [Bounded Walks and Paths 2](https://invisiblenetwork.ai/learn/nptel/106108468/2be5b44a1491) (YouTube)
14. [Bellman Ford P1](https://invisiblenetwork.ai/learn/nptel/106108468/0efe10acf431) (YouTube)
15. [Bellman Ford P2](https://invisiblenetwork.ai/learn/nptel/106108468/312e69bf5fef) (YouTube)
16. [Dijkstra Algorithm](https://invisiblenetwork.ai/learn/nptel/106108468/f8b382be5d7a) (YouTube)
17. [Dijkstra Algorithm P2](https://invisiblenetwork.ai/learn/nptel/106108468/4b7f18d0689e) (YouTube)
18. [Dijkstra Algorithm P3](https://invisiblenetwork.ai/learn/nptel/106108468/59e16537d8b8) (YouTube)
19. [All Pair Shortest Path](https://invisiblenetwork.ai/learn/nptel/106108468/867f9b2a9e43) (YouTube)
20. [All Pair Shortest Path 2](https://invisiblenetwork.ai/learn/nptel/106108468/c8eec10ce3a1) (YouTube)
21. [All Pair Shortest Path 3&4](https://invisiblenetwork.ai/learn/nptel/106108468/2def42b0b0f8) (YouTube)
22. [All Pair Shortest Path 5](https://invisiblenetwork.ai/learn/nptel/106108468/208f22bd4ec4) (YouTube)
23. [Prims Algorithm](https://invisiblenetwork.ai/learn/nptel/106108468/39b2c3d8a550) (YouTube)
24. [Prims Algorithm P2](https://invisiblenetwork.ai/learn/nptel/106108468/d6ee857e1a96) (YouTube)
25. [Kruskal's Algorithm](https://invisiblenetwork.ai/learn/nptel/106108468/9afdd8974243) (YouTube)
26. [Kruskal's Algorithm 2](https://invisiblenetwork.ai/learn/nptel/106108468/470fd098053c) (YouTube)
27. [Kruskal's Algorithm 3](https://invisiblenetwork.ai/learn/nptel/106108468/db7cdb3beb5e) (YouTube)
28. [DFS](https://invisiblenetwork.ai/learn/nptel/106108468/92da7b9f17af) (YouTube)
29. [DFS](https://invisiblenetwork.ai/learn/nptel/106108468/6a40fdb61a7d) (YouTube)
30. [Algorithm for Cut Vertex](https://invisiblenetwork.ai/learn/nptel/106108468/7d4c337553b7) (YouTube)
31. [Iterative DFS](https://invisiblenetwork.ai/learn/nptel/106108468/0cd88fa097b2) (YouTube)
32. [DFS in Directed Graph](https://invisiblenetwork.ai/learn/nptel/106108468/964ac6b9c126) (YouTube)
33. [Strong Connected Components](https://invisiblenetwork.ai/learn/nptel/106108468/7465db7e8e84) (YouTube)
34. [Strong Connected Components Part 2](https://invisiblenetwork.ai/learn/nptel/106108468/e1880268e856) (YouTube)
35. [Strong Connected Components Part 3](https://invisiblenetwork.ai/learn/nptel/106108468/3225c552355e) (YouTube)
36. [Strong Connected Components Part 4](https://invisiblenetwork.ai/learn/nptel/106108468/57df5c34293c) (YouTube)
37. [BFS](https://invisiblenetwork.ai/learn/nptel/106108468/fe6e8ebf2589) (YouTube)
