Exercices et corrigés - Structures de données en Python
Introduction aux structures de données en Python
Les structures de données sont essentielles pour organiser et manipuler efficacement les données
dans vos programmes. En Python, les principales structures sont :
- Les Listes : Structures ordonnées et modifiables.
- Les Tuples : Structures ordonnées mais non modifiables.
- Les Dictionnaires : Structures clé/valeur très flexibles.
- Les Ensembles : Structures non ordonnées et uniques.
- Les Piles et Files : Structures adaptées aux accès particuliers.
Exercices
Exercice 1 - Manipulation de Listes
Créez une fonction qui :
1. Prend en entrée une liste d'entiers.
2. Supprime les doublons.
3. Trie la liste en ordre croissant.
4. Retourne la somme des éléments de cette liste.
Correction Exercice 1
Solution :
def manipuler_liste(liste):
liste_sans_doublons = list(set(liste))
liste_triee = sorted(liste_sans_doublons)
Exercices et corrigés - Structures de données en Python
return sum(liste_triee)
Explication :
- La fonction `set()` permet de supprimer les doublons.
- La fonction `sorted()` trie la liste.
- La fonction `sum()` calcule la somme des éléments.
Exercice 2 - Utilisation des Dictionnaires
Créez une fonction qui :
1. Prend un dictionnaire avec des noms comme clés et des âges comme valeurs.
2. Retourne le nom de la personne la plus âgée.
Correction Exercice 2
Solution :
def personne_plus_agee(dico):
return max(dico, key=[Link])
Explication :
- La fonction `max()` avec `key=[Link]` permet de trouver la clé ayant la plus grande valeur.
Exercice 3 - Piles et Files
Implémentez une pile (LIFO) en utilisant une liste. Créez des méthodes pour :
- Empiler (push)
Exercices et corrigés - Structures de données en Python
- Dépiler (pop)
- Vérifier si la pile est vide.
Correction Exercice 3
Solution :
class Pile:
def __init__(self):
[Link] = []
def empiler(self, element):
[Link](element)
def depiler(self):
return [Link]() if [Link] else None
def est_vide(self):
return len([Link]) == 0
Explication :
- La méthode `append()` ajoute un élément.
- La méthode `pop()` retire le dernier élément ajouté.
- La méthode `est_vide()` vérifie si la pile est vide.