Course Description: The main objective of this course is to learn basic skills and knowledge to design efficient algorithms and data structures and to analyze their complexity. Students will learn about basic algorithms and data structures, and how to select an algorithm or data structure for a given task. These include
The sessions will intertwine lectures and solving and discussing exercises. These take place Wednesdays 08:4512:30 in MDB 0.09.
Lecture 
Assignments 

Week 
Date 
Topic 
Slides 
Python notes 
Due 
Home work 
05 
31012018 
Linear Search, Proving Correctness.  notes: intro/linear search: html, nb, loop invariants: html, nb, induction: html, nb, recursion: html, nb, practice: html, nb, weather data: csv, info, nb, count in interval (1d range counting): html, nb, proving f(n)=O(g(n)): html, nb 
28022018  
06 
07022018 
Asymptotic Analysis of Algorithms, Binary Search.  
07 
14022018 
No Meeting/Lecture


08 
21022018 
Sorting Algorithms.  
09 
28022018 
Recurrences.  notes: sorting: html, nb practice: html, nb 
21032018  
10 
07032018 
Lineartime Sorting.  
10 
14032018 
Quicksort, Selection.  
11 
21032018 
Abstract Data Types, Elementary Data Structures. 

notes: html, nb  11042018  
43 
28032018 
Hash Tables. 

practice: html, nb  
44 
04042018 
Heaps. 

notes: html, nb
practice: html, nb 

45 
11042018 
Binary Search Trees. 

notes: html, nb  02052018  
46 
18042018 
Graph Algorithms. 

practice: html, nb  
47 
25042018 
More Tree/Graph Algorithms. 

practice: html, nb  
48 
02052018 
kDtrees, Wrap Up. 



49 
09052018 
Practice Exam. 


xxxx2018, Exam (xx:00xx:00)  
xxxx2018, Second chance Exam 
Important: If you reach less than 50% of the possible points on the homework assignments or if you reach less than 50% of the points on the exam, then you will fail the course, regardless of the total number of points you collected; in this case your grade will be the minimum of 5 and the grade you achieved.
A great feature of Jupyter Notebook is that it is simple to typeset mathematics using LaTeX commands. LaTeX is a document typesetting software package that is widely used by mathematicians, (computer) scientists, and many others that need to typeset technical writing. This article on Wikipedia gives you some background and history.
For more background on LaTeX you can also read the "Not so short introduction ..." or check out this Wikibook.
You don't need to buy any of these books. A copy of each is available in Mariënburg.
T.H. Cormen. 

T.H. Cormen, C.E. Leiserson, R.L. Rivest and C. Stein. 

R.D. Necaise. 

M.T. Goodrich, R. Tamassia, M.H. Goldwasser. 