| Crédit : 5 ECTS |
| Langue du cours : anglais
|
| Niveau : C1-Autonome |
|
|
Volume horaire
- CM :
36 h
- Volume horaire global (hors stage) :
36 h
Compétences à acquérir
Develop proficiency in designing and implementing advanced algorithms
Description du contenu de l'enseignement
Explore advanced algorithmic design in the intensive course, Algorithms and Advanced Programming. Participants delve into cutting-edge concepts, optimization strategies, and intricate problem-solving methods, fostering a deep understanding of complex computational challenges. The program aims to equip individuals with the skills necessary to navigate the dynamic landscape of algorithmic innovation, making it a valuable experience for those seeking mastery in advanced computer science. Here is a possible list of contents, which might change according to the current trends or the lecturer's inclinations.
- Greedy Algorithms and Matroids
- Dynamic Programming
- Graph Algorithms I: Efficient Problem Solving
- Graph Algorithms II: Complex Problem Challenges
- Computational Geometry
- Stable Marriage
- Introduction to Integer Programming
Mode de contrôle des connaissances
- A programming project during the semester
- A final exam on paper
Pré-requis recommandés
- knowledge of Python
- knowledge of basic algorithms (sorting, shortest paths algorithms, minimum spanning tree algorithms...)
Bibliographie, lectures recommandées
- Introduction to Algorithms, third edition, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. MIT Press.
- Combinatorial Optimization, William Cook, William Cunningham, William Pulleyblank, Alexander Schrijver. Wiley.
Enseignant responsable
ROLAND GRAPPE