The purpose of the course is to:
Introduce problem solving using programs and design of algorithms and their complexity.
Review elementary data structures such as Arrays, Linked list, Stack, Queues,Trees and related algorithms for manipulating the data structures. It will also discuss
sorting and searching techniques, and their complexity. We will also briefly
explore more advanced data structures such as graphs and graph algorithms,
balanced trees, tries and heaps. An overview of parallelism and concurrent
data structures will also be given toward the end of the course.
Learn Algorithmic strategies such as greedy Algorithms, Dynamic
Programming and Divide and Conquer.
- Module Team: Innocent Twagirayezu