To provide the students the knowledge of the time and space complexity of computer algorithms in order to solve the problems with different paradigms. This course provides the students the knowledge of the time and space complexity of computer algorithms such as sorting, searching, and graph algorithms in order to solve the problems with different paradigms.
Content Outline of the Course/Module:
- Introduction to Design and Analysis of Algorithm
- Mathematical Tools
- Recurrence Equations
- Divide and Conquer Algorithms
- Advanced Sorting Algorithms
- Searching Algorithms
- Graph Algorithms
- Problem Classes
Upon completion of this course, students should be able to:
- Analyse the complexity of the algorithms.
- Design algorithms that can solve the problem.
- Demonstrate the concept of computational complexity through different types of algorithms.
|Teaching-learning Methods||Assessment Methods|
|Practical Works||Assignment, Progress Test, Final Examination|
|Computer-based Learning||Assignment, Progress Test, Final Examination|
|Lecture||Assignment, Progress Test, Final Examination|