A splay tree is a binary search tree with the additional property that recently accessed elements are quick to access again. Like self-balancing binary search trees, a splay tree performs basic operations such as insertion, look-up and removal in O(log n) amortized time. For random access patterns drawn from a non-uniform random distribution, their amortized time can be faster than logarithmic, proportional to the entropy of the access pattern. For many patterns of non-random operations, also, splay trees can take better than logarithmic time, without requiring advance knowledge of the pattern. According to the unproven dynamic optimality conjecture, their performance on all access patterns is within a constant factor of the best possible performance that could be achieved by any other self-adjusting binary search tree, even one selected to fit that pattern. The splay tree was invented by Daniel Sleator and Robert Tarjan in 1985.[1]
All normal operations on a binary search tree are combined with one basic operation, called splaying. Splaying the tree for a certain element rearranges the tree so that the element is placed at the root of the tree. One way to do this with the basic search operation is to first perform a standard binary tree search for the element in question, and then use tree rotations in a specific fashion to bring the element to the top. Alternatively, a top-down algorithm can combine the search and the tree reorganization into a single phase.
^ abcdSleator & Tarjan 1985.
^Cite error: The named reference BrinkmannDegraerDeLoof was invoked but never defined (see the help page).
A splaytree is a binary search tree with the additional property that recently accessed elements are quick to access again. Like self-balancing binary...
wall Splay (plastics), off-colored streaking that occurs in injection molded plastics Splaytree, a type of search treeSplay fault, geology Splay leg...
sequence in order. The splaytree is conjectured to have a constant competitive ratio compared to the dynamically optimal tree in all cases, though this...
search trees, including T-tree, treap, red-black tree, B-tree, 2–3 tree, and Splaytree. Binary search trees are used in sorting algorithms such as tree sort...
search treeSplaytree Strahler number Tree of primitive Pythagorean triples#Alternative methods of generating the tree Unrooted binary tree Rowan Garnier;...
mean ≈0.910. WAVL tree Weight-balanced treeSplaytree Scapegoat tree B-tree T-tree List of data structures Eric Alexander. "AVL Trees". Archived from the...
rotation at X. Tree rotations are used in a number of tree data structures such as AVL trees, red–black trees, WAVL trees, splaytrees, and treaps. They...
won the ACM Paris Kanellakis Award (jointly with Robert Tarjan) for the splaytree data structure. He was one of the pioneers in amortized analysis of algorithms...
tree Red–black tree Rope Scapegoat tree Self-balancing binary search treeSplaytree T-tree Tango tree Threaded binary tree Top tree Treap WAVL tree Weight-balanced...
to quicksort and heapsort[citation needed]. When using a splaytree as the binary search tree, the resulting algorithm (called splaysort) has the additional...
sorting algorithm based on the splaytree data structure. The steps of the algorithm are: Initialize an empty splaytree For each data item in the input...
his strongly connected components algorithm, and co-inventor of both splaytrees and Fibonacci heaps. Tarjan is currently the James S. McDonnell Distinguished...
Abstract syntax tree B-tree Binary tree Binary search tree Self-balancing binary search tree AVL tree Red–black treeSplaytree T-tree Binary space partitioning...
with a finger tree nor a splaytree, although both can be used to implement finger search trees. Guibas et al. introduced finger search trees, by building...
Some of the extensions of BSD libc are: sys/tree.h – contains an implementation of red–black tree and splaytree sys/queue.h – implementations of Linked list...
The dynamic optimality conjecture: do splaytrees have a bounded competitive ratio? Can a depth-first search tree be constructed in NC? Can the fast Fourier...
set. Any particular algorithm for maintaining binary search trees (such as the splaytree algorithm or Iacono's working set structure) has a cost for...
amortized time. It may also be used to analyze splaytrees, a self-adjusting form of binary search tree with logarithmic amortized time per operation....
professor of computer science known for inventing data structures such as the splaytree Alfred Spector (Professor), Vice President of Research and Special Initiatives...