Accueil UnitésStructures de données
NFA006

U.E Structures de données

nombre d’heures
36
Modalités 100% à distance
Crédits ects
4

Où se
former?

1 Centre d’enseignement en Nouvelle-Aquitaine

Quand se former ?

Rentrée
Permanente !
voir toutes les dates

Votre projet professionnel commence ici !

Formez-vous avec

Dites-nous tout sur votre projet !

Choisissez une session de formation

Centres de formation :
Modalités d’enseignement : 100% à distance Mixte : à distance + cours en salle Présentiel
Centres de formation Prochaines sessions Modalités Informations
Session 2021/2022
Centres de formation Prochaines sessions Modalités Informations
Nouvelle-Aquitaine Octobre 2021
Février 2022

1er semestre
NFA006-2021-1-FN-NA

Pas d'information disponible

Nouvelle-Aquitaine Février 2022
Juin 2022

2nd semestre
NFA006-2021-2-FN-NA

Pas d'information disponible

Session 2022/2023
Centres de formation Prochaines sessions Modalités Informations
Nouvelle-Aquitaine Octobre 2022
Février 2023

1er semestre
NFA006-2022-1-FN-NA

Pas d'information disponible

Nouvelle-Aquitaine Février 2023
Juin 2023

2nd semestre
NFA006-2022-2-FN-NA

Pas d'information disponible

Voir ma liste de formation
Prérequis :

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 :

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.

Nous contacter

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és de validation :

Examen

Nous contacter

Agenda

Choisissez une session de formation

Centres de formation
Modalités d’enseignement : 100% à distance Mixte : à distance + cours en salle Présentiel
  • Session 2020/2021

    Pas d'Unité d'Enseignement pour cette session

  • Session 2021/2022

  • Session 2022/2023

Présentation

Prérequis :

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 :

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.

Nous contacter

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és de validation :

Examen

Nous contacter
Tarif indicatif
720

Mobilisez les financements auxquels vous avez droit !

Votre entreprise

finance

720

Vous payez

0

Pôle Emploi



finance

360

Vous payez

0

Votre CPF

Compte Personnel de Formation

finance

720

Vous payez

0

Le Conseil Régional

finance

Vous payez

104 (1)

AG2R (2)
La Mondiale

finance
700

/module (4 modules maximum/an)

Vous payez

0
(1) -20% pour les demandeurs d'emploi (2) Dispositif réservé aux adhérents demandeurs d'emploi

Besoin de plus d’information sur les dispositifs de financement ?

Demandez l’aide
d’un conseiller
Cnam Nouvelle-Aquitaine

Valorisez votre formation avec un diplôme !

CPN9000A-1
Titre RNCP Niveau 5 (ex niveau III) Technicien développeur
CPN9000A-2
Titre RNCP Niveau 5 (ex niveau III) Technicien développeur
CPN9000A-3
Titre RNCP Niveau 5 (ex niveau III) Technicien développeur
Appuyer sur Entrée pour chercher ou la touche ESC pour fermer
    top