B-skip trees, a data structure between skip lists and B-trees

At a first look a skip-list is rather a collection of smartly connected linear linked list than a tree but they are, however, closely connected to trees. To prove it, we introduce random B-skip trees that inherit the performance rates of skip-lists. Moreover, we give a bijection between both data st...

Descripción completa

Detalles Bibliográficos
Autores: Gabarró Vallès, Joaquim|||0000-0003-3771-2813, Messeguer Peypoch, Xavier|||0000-0001-7430-4857
Tipo de recurso: informe técnico
Fecha de publicación:1994
País:España
Institución:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/96803
Acceso en línea:https://hdl.handle.net/2117/96803
Access Level:acceso abierto
Palabra clave:B-skip trees
Skip-lists
Àrees temàtiques de la UPC::Informàtica::Programació
Descripción
Sumario:At a first look a skip-list is rather a collection of smartly connected linear linked list than a tree but they are, however, closely connected to trees. To prove it, we introduce random B-skip trees that inherit the performance rates of skip-lists. Moreover, we give a bijection between both data structures that commute with elementary operations. Random B-skip trees are randomized B-trees where the number of keys of an internal node is given by a geometrically distributed random variable with parameter p. A random B-skip tree with n keys and parameter p has a O(log_{1/p} n) expected height and (1-p)/ p expected number of keys in a node, consequently an update operation can be done in expected time O(log_{1/p} n). The expected number of split and join operations needed to insert or delete a key is independent of n and is equal to 1/(1-p).