| Topics | Assignments | Slides | Algorithms | References |
Modules are in PPTX. Unfortunately, some modules will be available only in ORTUS
due to copyright limitations; in this case the title is grayed out.
The presentation files may change without warning; it is better to rely on textbook or other
documentation.
| Module | Dates | |
|---|---|---|
| 1.1 | HelloWorld programs | 2020-08-31 ... 2020-09-04 |
| 1.2 | Expressions, control structures, functions | 2020-09-07 ... 2020-09-11 |
| 1.3 | C++ classes | 2020-09-14 ... 2020-09-18 |
| 1.4 | Arrays, Pointers, References | |
| 2.1 | Analysis of Algorithms | 2020-09-21 ... 2020-09-25 |
| 2.2 | Object Orientation | |
| 2.3 | Simple Abstract Data Types (ADT) | 2020-09-28 ... 2020-10-02 |
| 2.4 | OO Design Patterns | |
| 2.5 | Testing and debugging | |
| 3.1 | List-like structures | 2020-10-05 ... 2020-10-09 |
| 3.2 | Tree-like structures | 2020-10-12 ... 2020-10-16 |
| Midterm Preparation | 2020-10-19 ... 2020-10-23 |
|
| 3.3 | Priority queues and heaps | |
| 3.4 | Maps and dictionaries | 2020-10-26 ... 2020-10-30 |
| 3.5 | Manipulating BST | 2020-11-02 ... 2020-11-06 |
| 3.6 | Sorting algorithms | |
| 3.7 | Set-Like structures and hashing | 2020-11-09 ... 2020-11-13 |
| 3.8 | Graph structures and traversals | |
| 3.9 | Shortest Paths and MST algorithms | 2020-11-16 ... 2020-11-20 |
| 4.1 | Types of algorithmic problems | 2020-11-23 ... 2020-11-27 |
| 4.2 | Brute-force paradigm | |
| 4.3 | Decrease and conquer paradigm | |
| 4.4 | Divide and conquer paradigm | 2020-11-30 ... 2020-12-04 |
| 4.5 | Dynamic programming paradigm | |
| 4.6 | Greedy paradigm | |