0% found this document useful (0 votes)
64 views5 pages

Daa Cif 2024

Uploaded by

23ucs649
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
64 views5 pages

Daa Cif 2024

Uploaded by

23ucs649
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

LNMIIT, Jaipur

Department of Computer Science & Engineering

Programme: Course Title: Course Code:


B. Tech. (CSE, CCE) Design and Analysis of Algorithms CSE325
Type of Course: Prerequisites: Total Contact Hours:
Program Core Data Structures and Algorithms 40 +20
Year/Semester: Lecture Tutorial Hrs/Week: Practical Hrs/Week: Credits:
Hrs/Week:
2/Odd 0 2 4
3

Learning Objective:

The objective of this course is to introduce the notion of algorithm, how to describe an algorithm
and model of computation for which an algorithm for a problem is to be designed. Time and space
complexities will be introduced to express the resource needed by an algorithm and to compare
different algorithms for a problem and to classify an algorithm as efficient or non-efficient.
Algorithm design paradigms such as Divide and Conquer, Greedy and Dynamic programming will
be introduced that will enable a student to apply one of the paradigms to design algorithm for a
given problem. The last part of the course will introduce the notion of NP-completeness to capture
the hardness of a problem and will show several fundamental problems in Computer Science and
engineering to be NP-complete.

Course outcomes (COs):


On completion of this course, the students will have the ability to: Bloom’s Level
CO-1 Analyze the complexity of algorithms in terms of asymptotic notations 3
and implement the algorithms
CO-2 Perform Analysis of important algorithmic design paradigms and 4
implement one algorithm designed using each paradigm
CO-3 Design efficient algorithmic solutions to graph related problems 6
and implement them
CO-4 Understand the concept of Computational Intractability 2

Course Topics Lecture CO


Hours Mapping
UNIT – I (Introduction) 8

1.1 What is algorithm? How to describe an algorithm? Why analyze 1 CO1


algorithms? RAM Model of Computation.

CSE Department, LNMIIT Jaipur Page | 1-3


LNMIIT, Jaipur
Department of Computer Science & Engineering

1.2 Asymptotic notation: big-Oh, big-Omega, big-Theta, small-oh 1

1.3 Recurrence relations: iterative method, substitution method, recursion-tree


2
method, Master method.
1.4 Sorting Algorithms: Bubble sort, Insertion sort, and Selection sort 2
1.5 Lower bound of sorting, Counting Sort, Radix Sort, Bucket Sort 2

UNIT – II (Design Paradigm) 15


2.1 Divide and Conquer: Merge Sort, Quick Sort, Counting Inversions, Linear
time selection algorithm. Correctness proof of all the algorithms.
3
2.2 Greedy Algorithms: Interval scheduling, Huffman Coding, Fractional CO2
4
Knapsack, Kruskal’s Algorithm and Union Find Data structure, Prim’s
Algorithm and its implementation using heap data structure. Correctness proof
of all the algorithms.
2.3 Dynamic Programming: Weighted interval scheduling, 0-1 Knapsack
4
Problem, Longest Common subsequence Correctness proof of all the algorithms
2.4 Backtracking: Basics, 8 Queen problem, Knapsack Problem
2
Correctness proof of all the algorithms
2.5 Branch and Bound: 0/1 Knapsack problem, Travelling salesman problem
2
Correctness proof of all the algorithms

UNIT-III (Graph Algorithms) 11


3.1 Concepts of Graph: Graph Representation, Applications of graphs, 2
Hand-Shaking Lemma, Different Graph types like connected, strongly
connected, etc.
3.1 Breadth First Search (BFS): BFS properties, BFS Algorithm, BFS
edge classification for directed and undirected graphs, Graph Coloring, CO3
Applications of BFS: Shortest Path on un-weighted graph, testing 3
bipartiteness
3.2 Depth First Search (DFS): DFS properties, DFS Algorithm, Parenthesis
Theorem, The white-path theorem, DFS edge classification for directed and 3
undirected graphs, The cycle theorem, Application of DFS like Topological
Sort, Cycle Detection, Checking Whether a Digraph is Strongly connected or
not.
3.3 Shortest Path: Bellman ford algorithm, Dijkstra’s Algorithm, All Pair
shortest path Floyd-Warshall Algorithm, Application of Shortest path 3
algorithms.

CSE Department, LNMIIT Jaipur Page | 2-3


LNMIIT, Jaipur
Department of Computer Science & Engineering

UNIT-IV (NP-Completeness and Computational Intractability) 6


4.1 NP-Completeness Motivation, Definitions of NP, NP-Complete, NP-hard
Problems, Algorithmic and Problem complexity, Optimization and Decision 3
Problems, Tractable and Intractable Problems, Unsolvable Problems, Class P
problems. CO4
4.2 Boolean Satisfiability Problem, Travelling Salesman Problem, Independent 3
Set, Vertex Cover, Connecting Independent Set and Vertex Cover.
Polynomial-time reductions of known NP-Complete Problems, Satisfiability and
Cook's theorem
Design and Analysis of Algorithm Lab (20 Hrs.)
Lab Description of problem Co Hours
No mapping
1 Compute the nth Fibonacci Number using recursive and non-recursive CO 1 2
program and compute the time taken by each program using time ()
function and estimate the time complexity
2 Implementations of Sorting Algorithms: Bubble sort, Insertion sort, and CO 1 2
Selection sort and compare the running time
3 Implementations of Counting Sort, Radix Sort, and Bucket Sort, Merge CO 1, 2
Sort, and Quick Sort CO 2
4 Implementation of Kruskal’s Algorithm using Union Find Data CO 2 2
structures
5 Implementation of Prim’s Algorithm and its implementation using CO 2 2
heap data structure
6 Implementation of Dynamic programming-based algorithm for CO 2 2
Longest Common subsequence
7 Implementation of backtracking algorithm to find all possible CO 2 2
solutions of 8 Queen problem
8 Implementation of branch and bound algorithm for Travelling CO 2 2
salesman problem
9 Implementation of (i) DFS based algorithm to test connectedness of a CO 3 2
graph and testing acyclicity of a graph
(ii) BFS based algorithm to test whether a graph is bipartite or not

10 Implementation of shortest path algorithms: Bellman ford algorithm, CO 3 2


Dijkstra’s Algorithm, Floyd-Warshall Algorithm

CSE Department, LNMIIT Jaipur Page | 3-3


LNMIIT, Jaipur
Department of Computer Science & Engineering

Textbook References:
Text Book:
1. Cormen, Thomas H., Leiserson, Charles E., Rivest, Ronald L. and Stein, Clifford. Introduction to
Algorithms. 4th Edition: The MIT Press, 2001.

Reference books:
1. Ellis Horowitz, Sartaj Sahani, Sanguthevar Rajasekaran. Fundamental of Computer
Algorithm. 1st Edition: University Press, 2008.
2. Skiena Steven, S. The algorithm design manual, 2008
3. Kleinberg, J., & Tardos, É. Algorithm design. 1st Edition: Pearson Education India, 2006

Additional Resources:
1. https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-design-and-
analysis-of-algorithms-spring-2015/
2. https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-
to-algorithms-fall-2011/
3. https://nptel.ac.in/courses/106/106/106106131/
4. nptel.ac.in/courses/106/101/106101060/

Evaluation Method
Item Weightage (%)
Quizzes (2) 5+5 = 10
Midterm 25
Practical 25
Final Examination 40

*Please note, as per the existing institute’s attendance policy the student should have a minimum of 75%
attendance. Students who fail to attend a minimum of 75% lectures will be debarred from the End
Term/Final/Comprehensive examination.

CSE Department, LNMIIT Jaipur Page | 4-3


LNMIIT, Jaipur
Department of Computer Science & Engineering

CO and PO Correlation Matrix (For CSE)

CO PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
CO1 1 1 1 3 3 3 2
CO2 1 1 3 1 3 3 3 3 2 2
CO3 3 3 3 1 3 3 3 3 2 2
CO4 3 3 3 3 3 3 3 3 3

CO and PO Correlation Matrix (For Others)

CO PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
CO1 1 1 1 3 3 3
CO2 1 1 3 1 3 3 3
CO3 1 1 3 1 3 3 3
CO4 3 3 3 3 3 3

Last Updated On:

Updated By:

Approved By:

CSE Department, LNMIIT Jaipur Page | 5-3

You might also like