Une SkipList fournit les mêmes limites pour la recherche qu'un arbre équilibré avec l'avantage qu'un rééquilibrage n'est pas nécessaire. Étant donné que la SkipList est construite à l'aide de retournements de pièces aléatoires, ces limites ne tiennent que tant que la structure de la SkipList est suffisamment "équilibrée". En particulier, avec probabilité 1 / n c pour une constante c > 0 , la structure équilibrée peut être perdue après l'insertion d'un élément.
Supposons que je souhaite utiliser une liste de sauts comme backend de stockage dans une application Web qui s'exécute potentiellement pour toujours. Ainsi, après un certain nombre d'opérations polynomiales, la structure équilibrée de la SkipList est très susceptible d'être perdue.
Mon raisonnement est-il correct? Ces structures probabilistes de données de recherche / stockage ont-elles des applications pratiques et si oui, comment éviter le problème ci-dessus?
Edit: Je suis conscient qu'il existe des variantes déterministes de la SkipList, qui sont beaucoup plus compliquées à mettre en œuvre par rapport à la SkipList aléatoire (classique).