CSE356 - Design and Analysis of Algorithm
CSE356 - Design and Analysis of Algorithm
School: SET
Program:B.Tech
Branch:CSE Semester:V
1 Course Code CSE354 Course Name: Design and Analysis of Algorithms
2 Course Title Design and Analysis of Algorithms
3 Credits 3
4 Contact 3-0-0
Hours
(L-T-P)
Course UG
Status
5 Course Objective of this course is to
Objective 1. Reinforce basic design concepts (e.g., pseudocode,
specifications, top-down design)
2. Knowledge of algorithm design strategies
3. Familiarity with an assortment of important algorithms.
4. Enable students to analyze time and space complexity
6 Course Students will be able to:
Outcomes CO1:Analyze the asymptotic performance of algorithms
CO2: Describe the dynamic-programming and Greedy paradigm
and explain when an algorithmic design situation calls for it.
CO3: Demonstrate a familiarity with major algorithms and data
structures
CO4:Apply important algorithmic design paradigms and methods
of analysis
CO5:Discuss NP-complete problems and develop algorithms to
solve the problems.
CO6:Choose appropriate algorithm design techniques for solving
problems.
7 Course This course introduces concepts related to the design and analysis
Description of algorithms. Specifically, it discusses recurrence relations, and
illustrates their role in asymptotic and probabilistic analysis of
algorithms. It covers in detail greedy strategies divide and conquer
techniques, dynamic programming and max flow - min cut theory
for designing algorithms, and illustrates them using a number of
well-known problems and applications.
8 Outline syllabus CO Mapping
Unit 1 Introduction
A Introduction : Algorithms, Analyzing CO1, CO3
algorithms, Complexity of algorithms,
Growth of functions, Performance
measurements
B Asymptotic Notations and their properties – CO1, CO2, CO3
Mathematical analysis for Recursive and
Non-recursive algorithms, Recurrences
relations, Master Method
C Divide-and-conquer: Analysis and Structure CO1, CO2, CO4
of divide-and-conquer algorithms, Divide-
and-conquer examples-Quick sort, Merge
sort,
Sorting in Linear Time counting sort, Heap
Sort
Unit 2 Greedy Method
A Overview of the Greedy paradigm, Analysis CO1,CO2,CO3
and example: task scheduling,
B Fractional Knapsack problem, Single source CO1,CO2,CO3
shortest paths problem: Dijkastra’s
Algorithm, Bellman-ford Algorithm,
C Overview and analysis of Backtracking & CO1,CO2,CO3
Branch and Bound: N-Queens problem and
Sum of subsets
Unit 3 Dynamic Programming
A Overview, Difference between dynamic CO1,CO2,CO3,
programming and divide and conquer, All CO4
pair shortest path problems: Floyd-Warshall
Algorithm
B Applications and analysis: Matrix Chain CO1, CO2, CO3,
Multiplication, CO4
C Applications and analysis: Longest Common CO1,CO2,CO3
sub-sequence, 0/1 Knapsack Problem
Unit 4 Advanced Data Structures
A Red-Black Trees - Definition, Applications, CO1, CO2, CO3,
Insertion and deletion of elements in RB- CO4
Tree
B B-Trees - Definitions, Applications, Insertion CO1, CO2, CO4
and Deletion in B-Trees
C Data Structure for Disjoint Sets – Definition, CO1, CO2, CO3,
Binomial Heaps, Fibonacci Heaps. CO4
Unit 5 Selected Topics
A Introduction to NP Complete and NP Hard CO1,CO2,CO3,
Problems, Examples, Amortized Analysis
B Approximation Algorithms – Travelling CO1,CO2,CO3
Sales Person Problem and Vertex Cover
Problem, Randomized Algorithms,
Randomized Quick Sort Algorithm
C String Matching Algorithms – Naive String CO1,CO2,CO3,
Matching Algorithm, Rabin Karp Algorithm. CO4
Mode of Theory
examination
Weightage CA MTE ETE
Distribution 25% 25% 50%
Text book/s* 1. Cormen et al., “Introduction of
Computer Algorithms”, Prentice Hall
India
Other 1. Sahni et al., “Fundamentals of Computer
References Algorithms”, Galgotia Publications.
2. Hopcroft A, The Design And Analysis
Computer Algorithms, Addison Wesley
CO and PO Mapping
S. Course Outcome Program Outcomes (PO)
No. & Program Specific
Outcomes (PSO)
1. CO1:Analyze the asymptotic performance of algorithms PO1, PO2, PO3, PO4,
PO9, PSO1, PSO2, PSO3
2. CO2: Describe the dynamic-programming and Greedy PO1, PO2, PO3, PO4,
paradigm and explain when an algorithmic design PO9, PSO1, PSO2, PSO3
situation calls for it.
3. CO3: Demonstrate a familiarity with major algorithms PO1, PO2, PO3, PO9,
and data structures PSO1, PSO2
4. CO4:Apply important algorithmic design paradigms and PO1, PO2, PO3, PO4,
methods of analysis PO9, PSO1, PSO2, PSO3
PO and PSO mapping with level of strength for Course Name Design and Analysis of
Algorithms Course Code CSE 354)
Design
and
CSP Analysi 2.1 1.8
2 2.4 2 - - - 2.2 - - - 2.5 2 2.3
354 s of 7 3
Algorit
hms
Lab
Strength of Correlation