Résumé
En informatique, et plus précisément en algorithmique, une skip list, ou liste à enjambements, ou liste à saut, est une structure de données probabiliste, à base de listes chaînées parallèles. La plupart de ses opérations s'effectuent en temps O(log n) avec une grande probabilité, où n est le nombre d'éléments contenus dans la liste. Les skip lists ont été inventées par William Pugh, d'abord présentées dans un rapport technique en 1989 puis présentées dans une publication en 1990. L'auteur, dans son rapport technique les compare avec les arbres binaires de recherche balancés, écrit : ''Skip lists are a probabilistic data structure that seem likely to supplant balanced trees as the implementation method of choice for many applications. Skip list algorithms have the same asymptotic expected time bounds as balanced trees and are simpler, faster and use less space.'' (Les skip lists sont une structure de données qui a l'air de surpasser les arbres (binaires de recherche) balancés comme une méthode d'implémentation de choix pour plusieurs applications. Les algorithmes des skip lists ont la même complexité asymptotique en espérance que les arbres balancés, et sont plus simples, plus rapides et utilisent moins de mémoire) Une skip list se présente comme une amélioration d'une liste chaînée triée. Elle contient des pointeurs supplémentaires vers l'avant, ajoutés de façon aléatoire, de sorte que la recherche dans la liste puisse « sauter » (to skip en anglais) de nombreux éléments. La skip list est organisée en couches. La couche la plus basse est simplement une liste chaînée standard. Chaque couche supérieure i+1 est une « voie rapide » pour parcourir les couches inférieures 1, ..., i. Un élément présent sur la couche i a une probabilité fixée p de faire partie de la couche i+1. En moyenne, chaque élément apparaît dans 1/(1-p) couches, et l'élément le plus haut (souvent un élément factice plus petit que tous les autres) apparaît dans toutes les couches. La skip list contient O(log1/p n) couches, où n est le nombre d'éléments total.
À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.