Self-adjusting binary search trees
Journal of the ACM (JACM)
Tree rebalancing in optimal time and space
Communications of the ACM
Concurrency control in database structures with relaxed balance
PODS '87 Proceedings of the sixth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Uncoupling updating and rebalancing in chromatic binary search trees
PODS '91 Proceedings of the tenth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Regular Article: Efficient rebalancing of chromatic search trees
Proceedings of the 30th IEEE symposium on Foundations of computer science
The art of computer programming, volume 3: (2nd ed.) sorting and searching
The art of computer programming, volume 3: (2nd ed.) sorting and searching
ACM Computing Surveys (CSUR)
Efficient algorithms to globally balance a binary search tree
Communications of the ACM
On-the-fly optimization of data structures
Communications of the ACM
Optimizing binary trees grown with a sorting algorithm
Communications of the ACM
AVL Trees with Relaxed Balance
Proceedings of the 8th International Symposium on Parallel Processing
IPPS '95 Proceedings of the 9th International Symposium on Parallel Processing
The Performance of Concurrent Red-Black Tree Algorithms
WAE '99 Proceedings of the 3rd International Workshop on Algorithm Engineering
Hi-index | 0.00 |
The most important methods for balancing search trees are periodical rebuilding of the whole tree, which takes Ω(N) time, and rebalancing the tree during each update operation, in O(logN) time. Recently, a new method called relaxed balancing has been proposed in which balancing and updates are uncoupled. Updates only leave balance information in the tree, thus enabling rebalancing later. In this paper, new algorithms for updating and rebalancing the tree, based on using the relaxed balance information, are given. It is shown that if M updates are performed in a red-black tree with N keys, the tree can be rebalanced in O(M log (N + M)) time. If the tree is originally empty, the rebalancing is performed in O(M) time.