Retour au blog

Quiz : Les Structures de Données (Piles, Files, Arbres, Hachage)

Le choix de la structure de données détermine la grande majorité de la performance de ton application. Es-tu sûr d'avoir fait le bon choix ?

Cet article a été rédigé à des fins pédagogiques. Les informations présentées peuvent évoluer. Nous t’invitons à vérifier auprès de sources officielles.

L'essentiel à connaître

Les structures de données sont des manières particulières d'organiser et de stocker les données dans un ordinateur pour qu'elles puissent être utilisées efficacement. Chaque structure possède ses propres forces et faiblesses en fonction de l'opération effectuée : insertion, suppression ou recherche. Pour ce quiz, tu dois maîtriser les concepts de base du stockage linéaire et hiérarchique.

Les structures linéaires incluent la Pile (Stack) et la File (Queue). Elles se distinguent par leur ordre de sortie. Les structures hiérarchiques, comme les Arbres (Trees), permettent de représenter des relations parent-enfant, tandis que les Tables de hachage visent l'accès instantané via une clé unique. Savoir quand utiliser un Arbre Binaire de Recherche plutôt qu'une Table de Hachage est une compétence clé pour tout développeur.

Définition : Une structure de données est un format d'organisation qui permet d'administrer et de modifier des données de façon optimale.

À retenir : LIFO (Last In, First Out) concerne les piles, tandis que FIFO (First In, First Out) concerne les files.

Les points clés

Dans une pile, le dernier élément ajouté est le premier à sortir, comme une pile d'assiettes. C'est le principe LIFO. On l'utilise pour la gestion de l'historique (bouton précédent) ou les appels de fonctions récursives. Dans une file, c'est l'inverse : le premier arrivé est le premier servi, comme dans une file d'attente au cinéma. C'est le principe FIFO, indispensable pour gérer des flux de tâches ou des impressions de documents.

Les arbres binaires de recherche (ABR) permettent des recherches rapides en O(log n) car à chaque nœud, on élimine la moitié des possibilités. Cependant, si l'arbre n'est pas équilibré, il peut devenir une simple liste chaînée en O(n). Enfin, la table de hachage utilise une fonction mathématique pour transformer une clé en index. En théorie, cela permet un accès en O(1), mais attention aux collisions qui peuvent ralentir les performances si elles sont mal gérées.

Formule : Nombre max de nœuds d'un arbre binaire de hauteur h = 2^(h+1) - 1.

Piège classique : Ne confonds pas un Arbre Binaire quelconque avec un Arbre Binaire de Recherche, où l'ordre des enfants est strictement défini par leur valeur.

Quiz : Teste tes connaissances

Question 1 : Quel acronyme décrit le fonctionnement d'une Pile (Stack) ?

A. LIFO
B. FIFO
C. GIGO
D. LILO

Réponse : A. Last In, First Out. Le dernier élément inséré est le premier à être retiré. FIFO (B) correspond à une File.

Question 2 : Dans quelle structure de données l'opération de retrait s'appelle-t-elle généralement "Dequeue" ?

A. Une Pile
B. Une File
C. Un Arbre
D. Un Graphe

Réponse : B. En anglais, une file se dit "Queue". On ajoute avec "Enqueue" et on retire avec "Dequeue". Pour une pile, on utilise "Push" et "Pop".

Question 3 : Quelle est la complexité temporelle moyenne d'une recherche dans une Table de Hachage bien conçue ?

A. O(n)
B. O(log n)
C. O(1)
D. O(n²)

Réponse : C. Grâce à la fonction de hachage, on accède directement à l'emplacement mémoire de la donnée sans parcourir la structure. C'est une opération en temps constant.

Question 4 : Comment appelle-t-on le nœud supérieur d'un arbre qui n'a pas de parent ?

A. La feuille
B. La branche
C. Le tronc
D. La racine

Réponse : D. La racine (root) est le point d'entrée unique de tout arbre. Les feuilles (A) sont les nœuds situés aux extrémités, sans enfant.

Question 5 : Dans un Arbre Binaire de Recherche (ABR), où se trouvent les valeurs plus petites que le nœud courant ?

A. Dans le sous-arbre gauche
B. Dans le sous-arbre droit
C. Directement au-dessus
D. N'importe où

Réponse : A. Par définition, dans un ABR, toutes les valeurs inférieures sont à gauche et toutes les valeurs supérieures sont à droite, ce qui facilite la recherche.

Question 6 : Quel problème survient quand deux clés différentes produisent le même index dans une table de hachage ?

A. Une corruption
B. Une collision
C. Un overflow
D. Une récursion

Réponse : B. Les collisions sont inévitables. On les gère généralement par chaînage (liste liée à l'index) ou par adressage ouvert.

Question 7 : Laquelle de ces applications utilise typiquement une Pile ?

A. Gestion d'une file d'attente d'imprimante
B. Planification de processus CPU
C. Parcours en largeur d'un graphe
D. Fonction "Annuler" (Undo) d'un logiciel

Réponse : D. Pour annuler la dernière action, le système doit récupérer l'élément le plus récent (LIFO). Les options A, B et C utilisent majoritairement des files.

Question 8 : Dans un arbre, qu'est-ce qu'une "feuille" ?

A. Le nœud principal
B. Un nœud avec un seul enfant
C. Un nœud sans aucun enfant
D. La liaison entre deux nœuds

Réponse : C. Une feuille est un nœud terminal. L'option D correspond à ce qu'on appelle une arête ou un lien.

Question 12 : Quelle structure est la plus adaptée pour modéliser une hiérarchie d'entreprise ?

A. Un Arbre
B. Une Pile
C. Une Table de hachage
D. Une File

Réponse : A. Les arbres sont parfaits pour représenter des relations de subordination et des structures parent-enfant.

Comment ORBITECH Peut T'aider

ORBITECH AI Academy met à ta disposition des outils concrets pour réviser plus efficacement et progresser à ton rythme.

Tous ces outils sont disponibles sur ta plateforme ORBITECH. Connecte-toi et explore ceux qui correspondent le mieux à tes besoins !

Contenu en libre diffusion — partage autorisé sous réserve de mentionner ORBITECH AI Academy comme source.

COMMENCE DÈS MAINTENANT

Cours approfondis, méthodologie et orientation pour réussir dans le supérieur.

Commencer gratuitement
🌍 ORBITECH AI Academy — Free education in 88 languages for 171 countries