Conception et mise en œuvre d'algorithmes.
Offered By: École Polytechnique via Coursera
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 !
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 quaternaires, les algorithmes gloutons ainsi que les bases de la programmation dynamique.
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 quaternaires, les algorithmes gloutons ainsi que les bases de la programmation dynamique.
Taught by
Dominique Rossin and Benjamin Werner
Tags
Related Courses
Advanced Algorithms and ComplexityUniversity of California, San Diego via Coursera Advanced Data Structures in Java
University of California, San Diego via Coursera 算法设计与分析 Design and Analysis of Algorithms
Peking University via Coursera Algorithms for Battery Management Systems
University of Colorado System via Coursera Shortest Paths Revisited, NP-Complete Problems and What To Do About Them
Stanford University via Coursera