Structures de données

📊 Chapitre : Structures linéaires

Les structures linéaires sont des structures de données dans lesquelles les éléments sont organisés les uns à la suite des autres. Nous étudions ici :


1️⃣ La pile

Une pile fonctionne selon le principe : LIFO — Last In, First Out (dernier entré, premier sorti).

Opérations principales :

Applications :


2️⃣ La file

Une file fonctionne selon le principe : FIFO — First In, First Out (premier entré, premier sorti).

Opérations principales :

Applications :


3️⃣ Les dictionnaires

Un dictionnaire associe une clé à une valeur. Contrairement aux listes, les éléments ne sont pas repérés par un indice, mais par une clé.


notes = {
    "Alice": 15,
    "Bob": 12,
    "Charlie": 18
}

Accès à une valeur : notes["Alice"]15

Opérations courantes :

🔎 Recherche : liste vs dictionnaire

Recherche dans une liste


liste = [4, 7, 12, 18]

def recherche_liste(valeur, L):
    for element in L:
        if element == valeur:
            return True
    return False

# Exemple d'appel
print(recherche_liste(12, liste))  # True
print(recherche_liste(5, liste))   # False

Recherche séquentielle → complexité \( O(n) \).

Recherche dans un dictionnaire


notes = {"Alice": 15, "Bob": 12, "Charlie": 18}

def recherche_valeur(valeur, dico):
    for v in dico.values():
        if v == valeur:
            return True
    return False

# Exemple d'appel
print(recherche_valeur(12, notes))   # True
print(recherche_valeur(20, notes))   # False

Parcourir les clés et les valeurs:


notes = {"Alice": 15, "Bob": 12, "Charlie": 18}

def afficher_dictionnaire(dico):
    for cle, valeur in dico.items():
        print(cle, ":", valeur)

# Exemple d'appel
afficher_dictionnaire(notes)

Résultat :


Alice : 15
Bob : 12
Charlie : 18

Trois parcours possibles:


🔗 À voir: cet exercice sujet zéro – 2024. Il porte sur les listes, les dictionnaires et la programmation de base en Python.