30410 - FUNDAMENTALS OF COMPUTER PROGRAMMING
Course taught in English
Go to class group/s: 25
As in Fundamentals of Computer Science 1, students continue to learn Python programming, with a special focus on numerical and scientific libraries, essential for the implementation of the algorithms discussed in the theoretical part of the course.
- Mathematical Programming: Data structures, Dynamic programming, Linear programming.
- Optimization: general theory and some examples (chosen from Graph theory, Matching problems, etc.).
- Randomized algorithms: Sampling & Optimization.
- Python Numerical and scientific libraries (Numpy, Scipy, Matplotlib, etc.).
- 2 partial written exams.
- Ageneral written exam.
30 cum laude is obtained with 31 points or more.
The exams is held in the computer classrooms, and mostly consist in programming tasks.
- T.H. CORMEN, C.E. LEISERSON, R.L. RIVEST, et al., Introduction to Algorithms, MIT, 3rd edition, selected chapters.
- A.B. DOWNEY, Think Python, O'Reilly Media.