At the end of the course the student is able to:
- use and explain elementary data structures (like heaps, binary trees, priority queues, graphs)
- use and explain elementary algorithms (like sorting algorithms, algorithms for traversing and updating data structures, and optimization algorithms)
- analyse complexity of algorithms and operations on data structures (using Master’s Theorem or recursion trees), and use dynamic programming to decrease complexity
|
|
Elementary algorithms and data structures for solving problems in computer sciences applications. Basic principles and techniques to analyse the complexity of algorithms; time complexity (worst-case and average-case) and space complexity. Data structures: heaps, binary trees, priority queues, graphs. Algorithm design dealing with: sorting, divide and conquer, dynamic programming.
|
|