YoVDO

Conception et mise en œuvre d'algorithmes.

Offered By: École Polytechnique via Coursera

Tags

Programming Courses Algorithm Design Courses Data Structures Courses Sorting Algorithms Courses Greedy Algorithms Courses Dynamic programming Courses Stacks Courses Queues Courses

Course Description

Overview

Ce cours vous fera découvrir différents aspects de la conception d'un programme. Au travers de nombreuses études de cas, nous mettrons en exergue les structures de données et les algorithmes permettant d'apporter des solutions. Comme souvent en informatique, il n'existe pas de solution unique et nous serons amenés à découvrir différentes classes d'algorithme et à les comparer.
Nous introduirons à cet effet la notion de complexité d'un programme, c'est à dire à la fois une estimation du temps d'exécution de votre programme et de l'espace requis par celui-ci. Il est tentant de croire que le "meilleur" programme est celui qui minimise le temps d'exécution mais très souvent cette complexité est contrainte par la mémoire dont vous disposez. Ainsi, vous n'utiliserez peut-être pas le même algorithme selon que votre programme s'exécute sur un ordinateur ou un téléphone !

Syllabus

Description: Ce cours présentera les structures de données les plus classiques comme les  tableaux, listes, piles, files, et arbres pour aller vers les graphes.
En parallèle, on découvrira les grands concepts de l'algorithmique à travers des études cas. Nous passerons ainsi en revue les tris, parcours, les arbres de recherche quaternairesles algorithmes gloutons ainsi que les bases de la programmation dynamique.




Taught by

Dominique Rossin and Benjamin Werner

Tags

Related Courses

Intro to Computer Science
University of Virginia via Udacity
Design of Computer Programs
Stanford University via Udacity
Analytic Combinatorics, Part I
Princeton University via Coursera
Algorithms, Part I
Princeton University via Coursera
Algorithms, Part II
Princeton University via Coursera