Skip lists är datastrukturer thla t använda probabilistisk balansering snarare än strikt påtvingad balansering. Som ett resultat, algoritmer för införande och radering i skip listor är mycket enklare och betydligt snabbare än likvärdiga algoritmer för balanserade träd. Binära träd kan användas för att representera abstrakta datatyper såsom ordböcker och beställda listor. De fungerar bra när elementen sätts in i slumpmässig ordning. Vissa sekvenser av operationer, såsom infoga elementen i ordning, producerar degenererade datastrukturer som utför mycket poo.rly. Om det var möjligt att slumpmässigt permutera listan över objekt som ska införas, träd skulle fungera bra med hög sannolikhet för alla inmatningssekvenser. I de flesta fall frågor måste besvaras på nätet, så slumpmässigt permutation indata är opraktiskt. Balanserade trädalgoritmer omorganiserar trädet som operationer utförs för att upprätthålla vissa balansförhållanden och säkerställa god prestanda. Skip lists är ett probabilistiskt alternativ till balanserade träd. Skip lists balanseras genom att konsultera en slumpmässig talgenerator. Även om skip listor har dåliga värsta fall prestanda, ingen ingång sekvens konsekvent producerar det värsta-fall prestanda (mycket som snabbsort när pivot elementet väljs slumpmässigt). Det är mycket osannolikt att en databas lista datastruktur kommer att vara betydligt obalanserad (t.ex., för en ordbok med mer än 250 element, chansen att en sökning kommer att ta mer än tre gånger den expeci.ed tiden är mindre än en på en miljon). Skip lists har balansegenskaper som liknar sökträd byggda av slumpmässiga insättningar, men kräver ändå inte insättningar för att vara slumpmässiga. Det är lättare att balansera en datastruktur probilitalt än att uttryckligen upprätthålla balansen. För många applikationer, skip lists är en mer naturlig representation än träd, och de leder till enklare algoritmer.
Liknar hoppa listar REF, detta sönderdelningsschema hashes sekvensens element för att (uniquely) bestämma en probabilistically-balanserad trädstruktur.
Skip lists: a probabilistic alternative to balanced trees
{'venue': 'CACM', 'journal': None, 'mag_field_of_study': ['Computer Science']}