Liste d’association

Définition, exemples et bonnes pratiques

À retenir

  • Structure basée sur des couples clé-valeur.
  • Historiquement liée au langage LISP (alist).
  • Simple à implémenter mais lente sur de grandes quantités de données.

Une liste d'association est une structure de données qui organise les informations par paires, associant systématiquement une étiquette (appelée clé) à une donnée correspondante (appelée valeur). On peut l'imaginer comme un carnet d'adresses simplifié où chaque ligne contient un nom et le numéro de téléphone qui lui est lié.

Étymologie

Il s'agit d'un calque de l'expression anglaise association list. Ce concept a été popularisé par LISP, l'un des plus anciens langages de programmation, où ces listes sont souvent appelées alists par contraction.

Exemples d'usage

  • Une liste de paramètres de configuration : (("vitesse", 10), ("couleur", "bleu")).
  • Un dictionnaire de traduction rudimentaire associant des mots anglais à leurs équivalents français.
  • La gestion des en-têtes d'un e-mail (Sujet : Bonjour, De : Alice, etc.).

Cas d'usage

On utilise les listes d'association principalement en programmation fonctionnelle ou pour gérer de petits ensembles de données. Elles sont idéales lorsque l'ordre des éléments doit être conservé ou quand la simplicité de création de la liste prime sur la rapidité de recherche.

Bonnes pratiques

Évitez d'utiliser une liste d'association pour stocker des milliers d'éléments. Comme l'ordinateur doit parcourir la liste élément par élément pour trouver une clé (recherche linéaire), les performances chutent rapidement. Pour de gros volumes, préférez une table de hachage ou un dictionnaire optimisé.

Synonymes

liste associative alist

Conseil

Si vous apprenez le développement, considérez la liste d'association comme l'ancêtre conceptuel des objets JSON ou des dictionnaires Python. C'est un excellent moyen de comprendre comment l'on lie des données entre elles de manière logique.

Questions fréquentes

Quelle est la différence entre une liste d'association et un dictionnaire ?

Le principe est le même, mais la structure technique change. La liste d'association est une simple suite de paires parcourue séquentiellement, alors qu'un dictionnaire utilise souvent du hachage pour sauter directement à la bonne information.

Peut-on avoir plusieurs fois la même clé ?

Techniquement oui dans une liste, mais lors d'une recherche, le programme s'arrêtera généralement sur la première occurrence rencontrée, ignorant les suivantes.