NSI (terminale) · Chapitre 1 · Exercice de TD
Convertir une file en pile
Structures de données linéaires · niveau 2
Énoncé
Convertir une file en pile.
On dispose d'une file (sous forme de deque). Écrire une fonction file_vers_pile(file) qui défile tous les éléments et les empile dans une pile (liste), puis renvoie cette pile. Quel est l'ordre obtenu au sommet ?
Corrigé
from collections import deque
def file_vers_pile(file):
pile = []
while len(file) > 0:
x = file.popleft() # on retire en tete de file (FIFO)
pile.append(x) # on empile (sommet = fin de liste)
return pile
f = deque([1, 2, 3]) # tete = 1
p = file_vers_pile(f)
print(p) # [1, 2, 3] -> sommet = 3
Les éléments sont défilés dans l'ordre puis empilés : le sommet de la pile devient le dernier défilé, soit . Le coût est .
100 % gratuit
Essaie le suivant avec le tuteur
- L'exercice suivant avec le tuteur, sans compte : il guide pas à pas, sans donner la réponse
- 8 autres exercices corrigés dans ce chapitre
- Les 2 QCM du chapitre, le premier sans compte
- Le podcast et la vidéo du chapitre : 2 minutes d'écoute sans compte
Sans compte : le cours, le premier QCM, 2 minutes de podcast et de vidéo et un exercice avec le tuteur. Pour tout le reste : inscription gratuite en 30 secondes, sans carte bancaire.