Data Structure and Algorithms: What is an algorithm, complexity of algorithms: order notation, Divide and Conquer Paradigm: Examples of algorithms via the divide and conquer method, Heaps and Priority Queue, Binary Search Trees, Nearly balanced binary search trees- Red-black trees and applications. Graphs and their representation on computers, BFS and DFS and their applications, Topological Sort, Shortest Path in Graphs  and Dijkstra's Algorithm, Bellman Ford, Kruskal and Prim's Spanning tree algorithm, Dynamic Programming. 

Text Book: Cormen, Leiserson, Rivest, Stein: Algorithms  (Indian Edition)

Reference Books:

Algorithm Design By Kleinberg, Tardos

Algorithms by Dasgupta, Papadimitriou, Vazirani