vix.ing · top · new · best · stats

Self-adjusting binary search trees

1985/07/01 by Daniel D. Sleator, Daniel Dominic Sleator, Robert E. Tarjan +1 · 1,244 citations
Computer Science · Mathematics · #Algorithm #Algorithms and Data Compression #Amortized analysis #Binary search tree #Binary tree #Combinatorics #Computer science #Data structure #Heuristic #Interval tree #K-ary tree #Lexicographical order #Mathematical optimization #Mathematics #Optimal binary search tree #Optimization and Search Problems #Random binary tree #Search algorithm #Search tree #Self-balancing binary search tree #Ternary search tree #Tree (set theory) #Tree structure #Web Data Mining and Analysis #Weight-balanced tree

paper · pdf · doi:10.1145/3828.3835

published in Journal of the ACM 32(3), 652-686 (Association for Computing Machinery)

openalex publication_date 1985/07/01 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/25

Abstract

The splay tree, a self-adjusting form of binary search tree, is developed and analyzed. The binary search tree is a data structure for representing tables and lists so that accessing, inserting, and deleting items is easy. On an n -node splay tree, all the standard search tree operations have an amortized time bound of O (log n ) per operation, where by “amortized time” is meant the time per operation averaged over a worst-case sequence of operations. Thus splay trees are as efficient as balanced trees when total running time is the measure of interest. In addition, for sufficiently long access sequences, splay trees are as efficient, to within a constant factor, as static optimum search trees. The efficiency of splay trees comes not from an explicit structural constraint, as with balanced trees, but from applying a simple restructuring heuristic, called splaying , whenever the tree is accessed. Extensions of splaying give simplified forms of two other data structures: lexicographic or multidimensional search trees and link/cut trees.

Citations

Cited by

Related