Fiche d’exercices de Structures de données avec corrigé

Fiche d’exercices de Structures de données gratuite et imprimable : 8 exercices, du niveau facile au niveau examen, avec corrigé. Imprimez-la ou enregistrez-la en PDF.

Pour les enseignants : gratuite à imprimer, copier et utiliser en classe. Chaque nouvelle fiche a de nouvelles valeurs et son propre corrigé. Un lien vers ExamProblems sur la page de votre cours est apprécié.

Nom: ____________________   Date: ____________

1.Facile

Quelle structure de données fonctionne selon le principe « premier entré, premier sorti » (FIFO) ?

  1. ATas (heap)
  2. BPile (stack)
  3. CFile (queue)
  4. DArbre binaire
2.Facile

Qu'est-ce qui définit un arbre binaire ?

  1. AL'arbre a exactement deux niveaux
  2. BChaque nœud a exactement deux enfants
  3. CChaque nœud stocke un nombre binaire
  4. DChaque nœud a au plus deux enfants
3.Facile

Dans quel ordre un parcours postfixe (postorder) d'un arbre binaire visite-t-il les nœuds ?

  1. ALe nœud, puis le sous-arbre gauche, puis le sous-arbre droit
  2. BLe sous-arbre gauche, puis le sous-arbre droit, puis le nœud
  3. CLe sous-arbre gauche, puis le nœud, puis le sous-arbre droit
  4. DLe sous-arbre droit, puis le nœud, puis le sous-arbre gauche
4.Moyen

Les arbres AVL et les arbres rouge-noir garantissent :

  1. AUne recherche en temps constant dans tous les cas
  2. BQue les clés sont stockées dans l'ordre d'insertion
  3. CQu'aucun nœud n'a deux enfants
  4. DUne hauteur en O(log n) grâce au rééquilibrage
5.Moyen

À quoi sert un nœud sentinelle (factice) dans une liste chaînée ?

  1. AÀ stocker le nombre d'éléments
  2. BÀ simplifier le code en supprimant les cas particuliers en tête ou en queue
  3. CÀ empêcher la liste de dépasser un nombre maximal fixe de nœuds
  4. DÀ rendre la liste triée
6.Moyen

Quel est le coût de l'insertion d'un élément au milieu d'un tableau de n éléments ?

  1. AO(1), car l'indice est connu
  2. BO(n²), car chaque élément se déplace n fois
  3. CO(n), car les éléments suivants doivent être décalés
  4. DO(log n), grâce à la recherche dichotomique
7.Difficile

L'insertion d'une clé dans un arbre AVL rend le sous-arbre gauche d'un nœud trop haut, et la nouvelle clé est allée dans le sous-arbre gauche de son enfant gauche (cas gauche-gauche). Quelle correction applique-t-on ?

  1. AUne rotation simple à gauche sur le nœud déséquilibré
  2. BUn recoloriage du nœud et de son enfant
  3. CUne rotation simple à droite sur le nœud déséquilibré
  4. DUne rotation à gauche sur l'enfant, puis une rotation à droite sur le nœud
8.Difficile

Dans un tampon circulaire, front == rear peut signifier vide ou plein. Quelle est une manière courante de les distinguer ?

  1. ATenir un compteur d'éléments séparé, ou toujours laisser une case inutilisée
  2. BStocker front et rear dans la même variable
  3. CToujours vider le tampon dès que front est égal à rear, si bien que l'état est vide
  4. DChoisir une taille de tampon égale à une puissance de deux

Corrigé

  1. 1. C · File (queue)
  2. 2. D · Chaque nœud a au plus deux enfants
  3. 3. B · Le sous-arbre gauche, puis le sous-arbre droit, puis le nœud
  4. 4. D · Une hauteur en O(log n) grâce au rééquilibrage
  5. 5. B · À simplifier le code en supprimant les cas particuliers en tête ou en queue
  6. 6. C · O(n), car les éléments suivants doivent être décalés
  7. 7. C · Une rotation simple à droite sur le nœud déséquilibré
  8. 8. A · Tenir un compteur d'éléments séparé, ou toujours laisser une case inutilisée

Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.