CS6402 | DESIGN AND ANALYSIS OF ALGORITHMS | L | T P C |
3 | 0 0 3 |
The student should be made to:
- Learn the algorithm analysis techniques.
- Become familiar with the different algorithm design techniques.
- Understand the limitations of Algorithm power.
UNIT I INTRODUCTION 9
Notion of an Algorithm – Fundamentals of Algorithmic Problem Solving – Important Problem Types – Fundamentals of the Analysis of Algorithm Efficiency – Analysis Framework – Asymptotic Notations and its properties – Mathematical analysis for Recursive and Non-recursive algorithms.
UNIT II BRUTE FORCE AND DIVIDE-AND-CONQUER 9
Brute Force - Closest-Pair and Convex-Hull Problems-Exhaustive Search - Traveling Salesman
Problem - Knapsack Problem - Assignment problem.
Divide and conquer methodology – Merge sort – Quick sort – Binary search – Multiplication of Large
Integers – Strassen?s Matrix Multiplication-Closest-Pair and Convex-Hull Problems.
UNIT III DYNAMIC PROGRAMMING AND GREEDY TECHNIQUE 9
Computing a Binomial Coefficient – Warshall?s and Floyd? algorithm – Optimal Binary Search Trees – Knapsack Problem and Memory functions. Greedy Technique– Prim?s algorithm- Kruskal's Algorithm- Dijkstra's Algorithm-Huffman Trees.
UNIT IV ITERATIVE IMPROVEMENT 9
The Simplex MeFthod-The Maximum-Flow Problem – Maximm Matching in Bipartite Graphs- The
Stable marriage Problem.
UNIT V COPING WITH THE LIMITATIONS OF ALGORITHM POWER 9
Limitations of Algorithm Power-Lower-Bound Arguments-Decision Trees-P, NP and NP-Complete Problems--Coping with the Limitations - Backtracking – n-Queens problem – Hamiltonian Circuit Problem – Subset Sum Problem-Branch and Bound – Assignment problem – Knapsack Problem – Traveling Salesman Problem- Approximation Algorithms for NP – Hard Problems – Traveling Salesman problem – Knapsack problem.
OUTCOMES:
At the end of the course, the student should be able to:
- Design algorithms for various computing problems.
- Analyze the time and space complexity of algorithms.
TOTAL: 45 PERIODS
- Critically analyze the different algorithm design techniques for a given problem.
- Modify existing algorithms to improve efficiency.
TEXT BOOK:
- Anany Levitin, “Introduction to the Design and Analysis of Algorithms”, Third Edition, Pearson
REFERENCES:
- Thomas H.Cormen, Charles E.Leiserson, Ronald L. Rivest and Clifford Stein, “Introduction to
- Alfred V. Aho, John E. Hopcroft and Jeffrey D. Ullman, “Data Structures and Algorithms”, Pearson
- Donald E. Knuth, “The Art of Computer Programming”, Volumes 1& 3 Pearson Education, 2009.
#################################################################################################
Post a Comment Blogger Facebook