CS30E - Design and Analysis of Algorithms | ![]() |
This course uses the following course codes:
- COMP 3000
- CS30E
Number of credits: 4
This course has the following prerequisites:
This course has no corequisites.
The assessment for the course is as follows:
This course has coursework assessment.
In course assignments weight: 25%
Final exam: 75%
Course syllabus
- Analyze algorithms for time and space bounds
Growth of functions
- Asymptotic notation
Recurrences: substitution iteration, master method
- Review and analysis of data structure
Stacks, Queues, Linked lists, Hash tables, binary search trees, red-black trees, graphs, spanning trees
- Review and analysis of sorting methods
Insertion sort, merge sort, heapsort, quicksort
- Algorithm design techniques
Dynamic programming Greedy algorithms Divide-and conquer algorithms Graph algorithms String matching algorithms
- Approximation algorithms
Examples of problems which can be solved using each of these techniques




