Analysis & Design of Algorithms (CS-311)

Course Type: Discipline Core
Batch: 3rd Year CSE, B.Tech and Dual Degree
Course Credits: 04

Course Objectives

Pre-requisites

Data structure and Linear Algebra

Venue

Vivekananda Lecture Hall (F5)

Time Slot

Monday: 10:00 AM - 11:00 AM
Tuesday: 03:00 PM - 04:00 PM
Thursday: 11:00 AM - 12:00 PM
Friday: 03:00 PM - 04:00 PM

Course Content

  1. Algorithms Introduction: Algorithm Design paradigms- motivation, concept of algorithmic efficiency, run time analysis of algorithms, Asymptotic Notations.
  2. Divide and Conquer Approach: Structure of divide-and-conquer algorithms: sets and disjoint sets: Union and Find algorithms, quick sort, Finding the maximum and minimum, Quick Sort, Merge sort, Heap and heap sort.
  3. Greedy Algorithms: Optimal storage on tapes, Knapsack problem, Job sequence algorithm, Huffman codes.
  4. Graph Algorithms: Representation of graphs, BFS, DFS, Topological sort, strongly connected Component, Single source shortest paths: Bellman-Ford Algorithm.
  5. Dynamic Programming: Overview, difference between dynamic programming and divide and conquer, Matrix chain multiplication, Traveling Salesman Problem, Longest Common sequence, 0/1 knapsack.
  6. Backtracking: 8-Queen Problem, Sum of subsets, graph coloring, Hamiltonian cycles.
  7. Branch and Bound: LC searching Bounding, FIFO branch and bound, LC branch and bound application: 0/1 Knapsack problem, Traveling Salesman Problem.
  8. Computational Complexity: Complexity measures, Polynomial vs nonpolynomial time complexity; NP-hard and NP-complete classes, examples.

Course Outcomes

Upon successful completion of the course, the students will be able to:

Reference Books/Text Books

  1. Fundamentals of Computer Algorithms by E. Horowitz and S. Sahni, Galgotia.
  2. Introduction to Algorithms by T.H. Cormen, C.E.Leiserson, R.L. Rivest, MIT Press, Cambridge.
  3. The Design and Analysis of Computer Algorithms by A.V. Aho, J.E. Hopcroft and J.D. Ullman, Addison Wesley.
  4. Grokking Algorithms, Aditya Bhargava, 1st edition,Manning.
  5. Data Structures and Algorithms Made Easy, Narasimha Karumanchi, 5th edition, Careermonk Publications.

Other Important Material