104 research outputs found
Amortized Rotation Cost in AVL Trees
An AVL tree is the original type of balanced binary search tree. An insertion
in an -node AVL tree takes at most two rotations, but a deletion in an
-node AVL tree can take . A natural question is whether
deletions can take many rotations not only in the worst case but in the
amortized case as well. A sequence of successive deletions in an -node
tree takes rotations, but what happens when insertions are intermixed
with deletions? Heaupler, Sen, and Tarjan conjectured that alternating
insertions and deletions in an -node AVL tree can cause each deletion to do
rotations, but they provided no construction to justify their
claim. We provide such a construction: we show that, for infinitely many ,
there is a set of {\it expensive} -node AVL trees with the property
that, given any tree in , deleting a certain leaf and then reinserting it
produces a tree in , with the deletion having done
rotations. One can do an arbitrary number of such expensive deletion-insertion
pairs. The difficulty in obtaining such a construction is that in general the
tree produced by an expensive deletion-insertion pair is not the original tree.
Indeed, if the trees in have even height , deletion-insertion
pairs are required to reproduce the original tree
Energy-Efficient Algorithms
We initiate the systematic study of the energy complexity of algorithms (in
addition to time and space complexity) based on Landauer's Principle in
physics, which gives a lower bound on the amount of energy a system must
dissipate if it destroys information. We propose energy-aware variations of
three standard models of computation: circuit RAM, word RAM, and
transdichotomous RAM. On top of these models, we build familiar high-level
primitives such as control logic, memory allocation, and garbage collection
with zero energy complexity and only constant-factor overheads in space and
time complexity, enabling simple expression of energy-efficient algorithms. We
analyze several classic algorithms in our models and develop low-energy
variations: comparison sort, insertion sort, counting sort, breadth-first
search, Bellman-Ford, Floyd-Warshall, matrix all-pairs shortest paths, AVL
trees, binary heaps, and dynamic arrays. We explore the time/space/energy
trade-off and develop several general techniques for analyzing algorithms and
reducing their energy complexity. These results lay a theoretical foundation
for a new field of semi-reversible computing and provide a new framework for
the investigation of algorithms.Comment: 40 pages, 8 pdf figures, full version of work published in ITCS 201
New Combinatorial Properties and Algorithms for AVL Trees
In this thesis, new properties of AVL trees and a new partitioning of binary search trees named
core partitioning scheme are discussed, this scheme is applied to three binary search trees namely AVL trees, weight-balanced trees, and plain binary search trees.
We introduce the core partitioning scheme, which maintains a balanced search tree as a dynamic
collection of complete balanced binary trees called cores. Using this technique we achieve the same theoretical efficiency of modern cache-oblivious data structures by using classic data structures such as weight-balanced trees or height balanced trees (e.g. AVL trees). We preserve the original topology and algorithms of the given balanced search tree using a simple post-processing with guaranteed performance to completely rebuild the changed cores (possibly all of them) after each update. Using our core partitioning scheme, we simultaneously achieve good memory allocation, space-efficient representation, and cache-obliviousness. We also apply this scheme to arbitrary binary search trees which can be unbalanced and we produce a new data structure, called Cache-Oblivious General Balanced Tree (COG-tree).
Using our scheme, searching a key requires O(log_B n) block transfers and O(log n) comparisons
in the external-memory and in the cache-oblivious model. These complexities are theoretically efficient. Interestingly, the core partition for weight-balanced trees and COG-tree can be maintained with amortized O(log_B n) block transfers per update, whereas maintaining the core partition for AVL trees requires more than a poly-logarithmic amortized cost.
Studying the properties of these trees also lead us to some other new properties of AVL trees
and trees with bounded degree, namely, we present and study gaps in AVL trees and we prove Tarjan et al.'s conjecture on the number of rotations in a sequence of deletions and insertions
Splaying Preorders and Postorders
Let be a binary search tree. We prove two results about the behavior of
the Splay algorithm (Sleator and Tarjan 1985). Our first result is that
inserting keys into an empty binary search tree via splaying in the order of
either 's preorder or 's postorder takes linear time. Our proof uses the
fact that preorders and postorders are pattern-avoiding: i.e. they contain no
subsequences that are order-isomorphic to and ,
respectively. Pattern-avoidance implies certain constraints on the manner in
which items are inserted. We exploit this structure with a simple potential
function that counts inserted nodes lying on access paths to uninserted nodes.
Our methods can likely be extended to permutations that avoid more general
patterns. Second, if is any other binary search tree with the same keys as
and is weight-balanced (Nievergelt and Reingold 1973), then splaying
's preorder sequence or 's postorder sequence starting from takes
linear time. To prove this, we demonstrate that preorders and postorders of
balanced search trees do not contain many large "jumps" in symmetric order, and
exploit this fact by using the dynamic finger theorem (Cole et al. 2000). Both
of our results provide further evidence in favor of the elusive "dynamic
optimality conjecture.
Search Tree Data Structures and Their Applications
This study concerns the discussion of search tree data structures and their applications. The thesis presents three new top-down updating algorithms for the concurrent data processing environment.Computing and Information Scienc
- …