0% found this document useful (0 votes)
18 views1 page

Design and Analysis of Algorithms

The course 'Design and Analysis of Algorithms' covers essential concepts such as algorithm behavior, complexity analysis, and various algorithm design strategies. Students will learn to analyze time and space complexity, implement graph algorithms, and utilize different algorithmic approaches. Assessment includes exams, assignments, and a project, with key reference materials provided for further study.

Uploaded by

chhira755
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)
18 views1 page

Design and Analysis of Algorithms

The course 'Design and Analysis of Algorithms' covers essential concepts such as algorithm behavior, complexity analysis, and various algorithm design strategies. Students will learn to analyze time and space complexity, implement graph algorithms, and utilize different algorithmic approaches. Assessment includes exams, assignments, and a project, with key reference materials provided for further study.

Uploaded by

chhira755
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/ 1

Design and Analysis of Algorithms

Credit Hours: 3 Prerequisites: Data Structures and Algorithms


Course Learning Outcomes (CLOs):
At the end of the course the students will be able to: Domain BT Level*
1. Explain what is meant by “best”, “expected”, and “worst”
case behavior of an algorithm
2. Identify the characteristics of data and/or other conditions
or assumptions that lead to different behaviors.
3. Determine informally the time and space complexity of
simple algorithms
4. List and contrast standard complexity classes
5. Use big O, Omega, Theta notation formally to give asymptotic
upper bounds on time and space complexity of
algorithms
6. Use of the strategies(brute-force, greedy, divide-and- conquer, and
dynamic programming) to solve an
appropriate problem
7. Solve problems using graph algorithms, including single- source
and all-pairs shortest paths, and at least one
minimum spanning tree algorithm
8. Trace and/or implement a string-matching algorithm
* BT= Bloom’s Taxonomy, C=Cognitive domain, P=Psychomotor domain, A=Affective domain

Course Content:
Introduction; role of algorithms in computing, Analysis on nature of input and size of input
Asymptotic notations; Big-O, Big Ω, Big Θ, little-o, little-ω, Sorting Algorithm analysis, loop
invariants, Recursion and recurrence relations; Algorithm Design Techniques, Brute Force Approach,
Divide-and-conquer approach; Merge, Quick Sort, Greedy approach; Dynamic programming;
Elements of Dynamic Programming, Search trees; Heaps; Hashing; Graph algorithms, shortest paths,
sparse graphs, String matching; Introduction to complexity classes;
Teaching Methodology:
Lectures, Written Assignments, Semester Project.
Course Assessment:
Sessional Exam, Home Assignments, Quizzes, Project, Final Exam
Reference Materials:
1. Introduction to Algorithms (3rd edition) by Thomas H. Corman, Charles E. Leiserson,
Ronald L. Rivest and Clifford Stein
2. Algorithm Design, (1st edition, 2013/2014), Jon Kleinberg, Eva Tardos,
3. Algorithms, (4th edition, 2011), Robert Sedgewick, Kevin Wayne

You might also like