Video Lecture Series on Data Structures and Algorithms by Dr. Naveen Garg, Department of Computer Science and Engineering ,IIT Delhi

Lecture Series on Data Structures and Algorithms by Dr. Naveen Garg, Department of Computer Science and Engineering ,IIT Delhi



1 - Introduction to Data Structures and Algorithms [53:31]
2 - Stacks [01:04:09]
3 - Queues and Linked Lists [01:00:35]
4 - Dictionaries [53:43]
5 - Hashing [01:01:22]
6 - Trees [43:14]
7 - Tree Walks / Traversals [51:10]
8 - Ordered Dictionaries [56:17]
9 - Deletion [58:32]
10 - Quick Sort [58:44]
11 - AVL Trees [53:41]
12 - AVL Trees [01:00:19]
13 - Trees [49:11]
14 - Red Black Trees [01:04:33]
15 - Insertion in Red Black Trees [48:34]
16 - Disk Based Data Structures [42:36]
17 - Case Study: Searching for Patterns [01:02:01]
18 - Tries [01:01:35]
19 - Data Compression [45:46]
20 - Priority Queues [49:46]
21 - Binary Heaps [41:52]
22 - Why Sorting [48:27]
23 - More Sorting [58:00]
24 - Graphs [56:45]
25 - Data Structures for Graphs [57:48]
26 - Two Applications of Breadth First Search [53:24]
27 - Depth First Search [53:46]
28 - Applications of DFS [59:32]
29 - DFS in Directed Graphs [53:08]
30 - Applications of DFS in Directed Graphs [38:45]
31 - Minimum Spanning Trees [58:51]
32 - The Union [55:14]
33 - Prims Algorithm for Minimum Spanning Trees [01:01:15]
34 - Single Source Shortest Paths [58:58]
35 - Correctness of Dijkstras Algorithm [55:59]
36 - Single Source Shortest Paths [57:42]
These video lectures are delivered by IIT professors as a part of NPTEL project.

Detailed Syllabus

Data Structures

Course objective: The objective of the course is to familiarize students with basic data structures and their use in fundamental algorithms.

Course contents:
Introduction to object oriented programming through stacks,
queues and linked lists.
Dictionaries: skip-lists, hashing, analysis of collision resolution techniques.
Trees, traversals, binary search trees, optimal and average BST’s. 2-4 trees and red-black trees. Tries and pattern matching.
Priority queues and binary heaps. Sorting: merge, quick, radix, selection, heap.
Graphs, Breadth first search and connected components. Depth first search in
directed and undirected graphs and strongly connected components.
Spanning trees: Prim's and Kruskal’s algorithm, union-find data structure. Dijkstra’s
algorithm for shortest paths, shortest path tree.
Directed acyclic graphs: topological sort and longest path.

Lecture outline with topics
no. of lectures
Introduction to object oriented programming through stacks, queues and linked lists
4

Dictionaries: skip-lists, hashing, analysis of collision resolution techniques
Trees, traversals, binary search trees, optimal and average BST’s
trees and red-black trees

5
6

4
Tries and pattern matching. Priority queues and binary heaps 5
Sorting: merge, quick, radix, selection, heap
3
Introduction to Graphs, Breadth first search and connected components 3
Depth first search in directed and undirected graphs and strongly connected components
3
Spanning trees: Prim's and Kruskal's algorithm, union-find datastructure. 4
Dijkstra's algorithm for shortest path. shortest path tree. Shortest and longest paths in directed acyclic graphs 5

No comments: