CoursNumérique et sciences informatiques · tle
Comment organiser efficacement les données dans un programme ? Les structures de données sont des façons d'organiser l'information pour la traiter au mieux. La spécialité NSI de terminale approfondit listes, piles, files et arbres.
Le cours
Une structure de données est une façon d'organiser et de stocker des données pour les manipuler efficacement. Le choix de la structure dépend de ce qu'on veut faire : selon les opérations à réaliser, certaines structures sont plus adaptées que d'autres.
La structure choisie influence l'efficacité du programme.
Selon les opérations voulues, on choisit la structure de données la plus adaptée.
La pile fonctionne en « dernier arrivé, premier sorti » (comme une pile d'assiettes : on prend celle du dessus). La file fonctionne en « premier arrivé, premier sorti » (comme une file d'attente). Ces deux structures organisent l'ordre de traitement des données.
Pile (dernier arrivé sorti) et file (premier arrivé sorti).
Une pile d'assiettes : on retire d'abord celle posée en dernier (dernier arrivé, premier sorti).
La liste est une structure qui contient une suite ordonnée d'éléments, qu'on peut parcourir, modifier, allonger. C'est l'une des structures les plus utilisées en programmation, très souple pour stocker des collections de données.
La liste stocke une suite ordonnée d'éléments.
Une liste peut stocker une suite de nombres ou de mots, que l'on parcourt.
L'arbre est une structure hiérarchique : un élément (la racine) se ramifie en plusieurs autres, comme les branches d'un arbre. Les arbres représentent bien des données organisées en hiérarchie (arborescence de fichiers, classifications) et permettent des recherches efficaces.
L'arbre organise les données de façon hiérarchique.
L'arborescence des dossiers d'un ordinateur est une structure en arbre.
Une même donnée peut être organisée de plusieurs façons. La liste range les éléments les uns après les autres. La pile fonctionne en « dernier arrivé, premier sorti » (LIFO) : on retire toujours le dernier ajouté. La file fonctionne à l'inverse, en « premier arrivé, premier sorti » (FIFO).
Choisir la bonne structure selon le problème rend les programmes plus simples et plus efficaces.
L'arbre est une structure hiérarchique : à partir d'une racine, des branches mènent à des nœuds, jusqu'aux feuilles. On le retrouve dans l'arborescence des fichiers d'un ordinateur ou dans les arbres de recherche.
Les arbres permettent d'organiser et de retrouver l'information très efficacement, ce qui en fait une structure fondamentale de l'informatique.
Pourquoi la fonction « annuler » (Ctrl+Z) utilise-t-elle une pile ?
Piles, files et arbres sont omniprésents : historique de navigation, files d'impression, moteurs de recherche, systèmes de fichiers. Bien choisir sa structure de données est l'une des compétences clés du programmeur : c'est souvent ce qui distingue un programme lent d'un programme rapide et élégant.
Ce qu'il faut absolument retenir
Vérifie ta compréhension
Exercice 1Qu'est-ce qu'une structure de données ?
Une structure de données est une façon d'organiser et de stocker des données pour les manipuler efficacement.
Exercice 2Comment fonctionne une pile ?
Une pile fonctionne en « dernier arrivé, premier sorti » (comme une pile d'assiettes).
Exercice 3Comment fonctionne une file ?
Une file fonctionne en « premier arrivé, premier sorti » (comme une file d'attente).
Exercice 4Un arbre est une structure de données hiérarchique (une racine qui se ramifie).
Vrai : l'arbre est une structure hiérarchique, adaptée aux données organisées en hiérarchie (comme l'arborescence de fichiers).
Exercice 5Explique la différence entre une pile et une file, avec un exemple de chacune.
Une pile fonctionne en « dernier arrivé, premier sorti » : on retire toujours le dernier élément ajouté, comme dans une pile d'assiettes où l'on prend celle du dessus. Une file fonctionne en « premier arrivé, premier sorti » : on retire le premier élément ajouté, comme dans une file d'attente où le premier arrivé est servi en premier. Ces deux structures organisent différemment l'ordre de traitement des données.
L'essentiel en images