- Cours (CM) -
- Cours intégrés (CI) 14h
- Travaux dirigés (TD) -
- Travaux pratiques (TP) 14h
- Travail étudiant (TE) -
Langue de l'enseignement : Français
Niveau de l'enseignement : B2-Avancé - Utilisateur indépendant
Description du contenu de l'enseignement
Définition des qualités d'un programme : modularité, lisibilité, robustesse et fiabilité. Définition de structures de données linéaires abstraites comme les piles, les files et les listes. Résolution de problèmes concrets et choix d'une structure de données. L'objectif final de cet enseignement est de d'apprendre à construire, à partir d'un algorithme, les structures de données qui permettront, de mettre en oeuvre cet algorithme. Il s'agit également d'évaluer et de comprendre l'effet de l'utilisation d'une structure de données spécifique sur l'efficacité de l'algorithme.
Compétences à acquérir
Les compétences sont celles qu'il faut développer pour la construction d'un programme informatique
- l'élaboration de l'algorithme (déjà abordé au semestre précédent) ;
- le choix de la représentation des données ;
- l'énumération des interactions qu'on doit pouvoir exercer sur la structure de données ;
- en déduire les entêtes de fonctions nécessaires pour réaliser ces interactions ;
- le choix de la structure de données abstraite la mieux adaptée à l'algorithme ;
- le choix de la structure de données concrète adéquate ;
- l'évaluation de l'impact de cette structure de données sur la complexité de l'algorithme ;
- la mise en oeuvre de ces étapes en langage Python
- l'élaboration de l'algorithme (déjà abordé au semestre précédent) ;
- le choix de la représentation des données ;
- l'énumération des interactions qu'on doit pouvoir exercer sur la structure de données ;
- en déduire les entêtes de fonctions nécessaires pour réaliser ces interactions ;
- le choix de la structure de données abstraite la mieux adaptée à l'algorithme ;
- le choix de la structure de données concrète adéquate ;
- l'évaluation de l'impact de cette structure de données sur la complexité de l'algorithme ;
- la mise en oeuvre de ces étapes en langage Python
Contact
UFR de mathématique et d'informatique
7, rue René Descartes67084 STRASBOURG CEDEX
0368850200
Formulaire de contact