Design and analysis of algorithms. Asymptotic complexity, O() notation. Sorting and search. Algorithms on graphs: exploration, connectivity, shortest paths, directed acyclic graphs, spanning trees. Design techniques: divide and conquer, greedy, dynamic programming. Data structures: heaps, union of disjoint sets.The content provides a self explanatory insight on the subject.primarily for students of 2nd year.