Structures de données

Code UE : NFA006

  • Cours
  • 4 crédits

Responsable(s)

Cedric DU MOUZA

Public et conditions d'accès

Ce cours s'adresse aussi bien aux élèves en licence qu'à ceux préparant le titre d'analyste programmeur ou le DUT. Il suppose une connaissance minimale en algorithmique et en programmation.

Objectifs pédagogiques

Donner les notions fondamentales de structures de données et de leur utilisation, et montrer comment les implanter à bon escient dans un langage de programmation de haut niveau. Faire comprendre l'importance de la spécification rigoureuse des structures de données, le pourquoi de l'étude de la complexité des algorithmes qui les manipulent, les principes de mise en oeuvre de ces structures.

Compétences visées

- Savoir évaluer la complexité d'un algorithme simple en fonction de la taille des données.
- Savoir abstraire les principales structures de données, les spécifier et les implanter.

Contenu

Notions préliminaires
Rappel succinct des propriétés et caractéristiques essentielles des supports de mémorisation, tels que la mémoire centrale, les disques et les bandes. Notion de complexité des algorithmes : mesure d'efficacité en fonction de la taille du problème.
Les structures de données
Les structures séquentielles et les structures arborescentes. Principaux algorithmes liés à ces structures. Différentes techniques d'implantation de ces structures : avantages et inconvénients.
L'utilisation des structures
Principaux algorithmes de tri. Généralités et méthodes simples. Méthodes efficaces. Mesures et comparaisons entre ces algorithmes.
Principes de la recherche d'informations. Recherche séquentielle dans une liste quelconque. Recherche dichotomique dans une liste ordonnée pour laquelle on dispose de l'accès par le rang. Gestion d'un tas : solution efficace pour rechercher le plus petit élément d'un ensemble.
Utilisation de structures arborescentes pour la recherche. Les arbres binaires de recherche : recherche, adjonction et suppression. Évaluation de la complexité logarithmique en moyenne de ces opérations, et comparaison avec les structures séquentielles. Évaluation de la complexité au pire linéaire : amélioration par rééquilibrage donnant les arbres AVL. Analyse des opérations simples de rotation ponctuelle pour conserver l'équilibre.
Généralisation des arbres AVL aux arbres balancés pour prendre en compte une caractéristique des disques : la taille des blocs transférés. Application aux fichiers séquentiels indexés.
Recherche utilisant la notion de hachage : principes et méthodes de résolution des collisions.
Remarque : Implantations proposées au moyen de paquetages Ada génériques disponibles en machine (ou modules Java ou C++), pour que les élèves puissent les utiliser lors de travaux pratiques personnels, et apprennent ainsi les notions fondamentales de réutilisation du logiciel.

Modalité d'évaluation

Examen

Bibliographie

  • C. CARREZ : Structures de données en Java, C++ et Ada 95 (Masson 1997)
  • M.-C. GAUDEL, M. SORIA, C. FROIDEVAUX : Types de données et algorithmes (McGraw-Hill, 1990).
  • C. CARREZ et al. : URL:http://deptinfo.cnam.fr/Enseignement/CycleA/SD/
  • J. COURTIN, I. KOWARSKI : Initiation à l'algorithmique et aux structures de données. Volumes 1 et 2 (Dunod).

Cette UE apparaît dans les diplômes et certificats suivants

Chargement du résultat...
Patientez
Intitulé de la formation
Type
Modalité(s)
Lieu(x)
Lieu(x) À la carte
Lieu(x) Ile-de-France
Lieu(x) À la carte
Lieu(x) Alternance
Intitulé de la formation Technicien développeur
Lieu(x) Alternance
Intitulé de la formation Technicien développeur
Lieu(x) À la carte
Intitulé de la formation Type Modalité(s) Lieu(x)

Contact

EPN05 - Equipe pédagogique AISL
2D4P30, 37.0.36, 2 rue Conté
75003 Paris
Tel :01 40 27 27 02
Emmanuelle BIAR

Voir les dates et horaires, les lieux d'enseignement et les modes d'inscription sur les sites internet des centres régionaux qui proposent cette formation

UE

    • Paris
      • Centre Cnam Paris
        • 2019-2020 1er semestre : Présentiel jour
        • 2019-2020 1er semestre : Présentiel soir ou samedi
        • 2019-2020 2nd semestre : FOAD 100%
        • 2020-2021 1er semestre : Présentiel jour
        • 2020-2021 1er semestre : Présentiel soir ou samedi
        • 2020-2021 2nd semestre : FOAD 100%
        • 2021-2022 1er semestre : Présentiel jour
        • 2021-2022 1er semestre : Présentiel soir ou samedi
        • 2021-2022 2nd semestre : FOAD 100%
        Comment est organisée cette formation ?

        Organisation de la modalité FOAD 100%

        Planning

        1er semestre

        • Date de démarrage : 01/10/2019
        • Date limite d'inscription : 02/11/2019
        • Regroupements facultatifs : 1 pour une totalité de 2 heures
        • Date de 1ère session d'examen : la date sera publiée sur le site du centre ou l'ENF
        • Date de 2ème session d'examen : la date sera publiée sur le site du centre ou l'ENF

        Accompagnement

        • Plateforme Moodle
        • Forum
        • Messagerie intégrée à la plateforme
        • Classe virtuelle

        Ressources mises à disposition de l'auditeur

        • Documents de cours
        • Enregistrement de cours
        • Documents d'exercices, études de cas activités
        • Bibliographie et webographie

        Modalités de validation

        • Examen sur table
        :
    • Ile-de-France (sans Paris)
      • Ile-de-France (sans Paris)
        Comment est organisée cette formation ?

        Organisation de la modalité FOAD 100%

        Planning

        2ème semestre

        • Date de démarrage : 02/03/2020
        • Date limite d'inscription : 30/04/2020
        • Regroupements facultatifs : aucun
        • Date de 1ère session d'examen : la date sera publiée sur le site du centre ou l'ENF
        • Date de 2ème session d'examen : la date sera publiée sur le site du centre ou l'ENF

        Accompagnement

        • Plateforme Moodle
        • Chat
        • Forum

        Ressources mises à disposition de l'auditeur

        • Documents de cours

        Modalités de validation

        • Contrôle continu
        • Examen sur table
        :
    • Grand Est
      • Grand Est
        Comment est organisée cette formation ?

        Organisation de la modalité FOAD 100%

        Planning

        1er semestre

        • Date de démarrage : 21/11/2019
        • Date limite d'inscription : 08/09/2020
        • Regroupements facultatifs : aucun
        • Date de 1ère session d'examen : 12/02/2020
        • Date de 2ème session d'examen : 09/09/2020

        Accompagnement

        • Plateforme Moodle
        • Forum
        • Messagerie intégrée à la plateforme
        • Classe virtuelle
        • Séance de démarrage

        Ressources mises à disposition de l'auditeur

        • Documents de cours
        • Documents d'exercices, études de cas activités

        Modalités de validation

        • Examen sur table
        :
    • Liban
      • Liban
        • 2019-2020 2nd semestre : Présentiel soir ou samedi
        • 2020-2021 2nd semestre : Présentiel soir ou samedi
        • 2021-2022 2nd semestre : Présentiel soir ou samedi