Results 1  10
of
12
General balanced trees
 Journal of Algorithms
, 1999
"... We show that, in order to achieve efficient maintenance of a balanced binary search tree, no shape restriction other than a logarithmic height is required. The obtained class of trees, general balanced trees, may be maintained at a logarithmic amortized cost with no balance information stored in the ..."
Abstract

Cited by 19 (0 self)
 Add to MetaCart
We show that, in order to achieve efficient maintenance of a balanced binary search tree, no shape restriction other than a logarithmic height is required. The obtained class of trees, general balanced trees, may be maintained at a logarithmic amortized cost with no balance information stored in the nodes. Thus, in the case when amortized bounds are sufficient, there is no need for sophisticated balance criteria. The maintenance algorithms use partial rebuilding. This is important for certain applications and has previously been used with weightbalanced trees. We show that the amortized cost incurred by general balanced trees is lower than what has been shown for weightbalanced trees. � 1999 Academic Press 1.
An Evaluation of Selfadjusting Binary Search Tree Techniques
 Software Practice and Experience
, 1993
"... Much has been said in praise of... this paper, we compare the performance of three different techniques for selfadjusting trees with that of AVL and random binary search trees. Comparisons are made for various tree sizes, levels of keyaccessfrequency skewness and ratios of insertions and deletion ..."
Abstract

Cited by 17 (1 self)
 Add to MetaCart
Much has been said in praise of... this paper, we compare the performance of three different techniques for selfadjusting trees with that of AVL and random binary search trees. Comparisons are made for various tree sizes, levels of keyaccessfrequency skewness and ratios of insertions and deletions to searches. The results show that, because of the high cost of maintaining selfadjusting trees, in almost all cases the AVL tree outperforms all the selfadjusting trees and in many cases even a random binary search tree has better performance, in terms of CPU time, than any of the selfadjusting trees. Selfadjusting trees seem to perform best in a highly dynamic environment, contrary to intuition.
Fast updating of wellbalanced trees
 In SWAT 90, 2nd Scandinavian Workshop on Algorithm Theory
, 1990
"... Trees of optimal and nearoptimal height may be represented as a pointerfree structure in an array of size O(n). In this way we obtain an array implementation of a dictionary with O(log n) search cost and O(log2 n) update cost, allowing interpolation search to improve the expected search time. 1 In ..."
Abstract

Cited by 14 (0 self)
 Add to MetaCart
Trees of optimal and nearoptimal height may be represented as a pointerfree structure in an array of size O(n). In this way we obtain an array implementation of a dictionary with O(log n) search cost and O(log2 n) update cost, allowing interpolation search to improve the expected search time. 1 Introduction The binary search tree is a fundamental and well studied data structure, commonly used in computer applications to implement the abstract data type dictionary. In a comparisonbased model of computation, the lower bound on the three basic operations insert, delete and search is dlog(n + 1)e comparisons per operation. This bound may be achieved by storing the set in a binary search tree of optimal height. Definition 1 A binary tree has optimal height if and only if the height of the tree is dlog(n + 1)e. A special case of a tree of optimal height is an optimally balanced tree, as defined below. Definition 2 A binary tree is optimally balanced if and only if the difference in length between the longest and shortest paths is at most one.
Binary Search Trees of Almost Optimal Height
 ACTA INFORMATICA
, 1990
"... First we present a generalization of symmetric binary Btrees, SBB(k) trees. The obtained structure has a height of only \Sigma (1 + 1k) log(n + 1)\Upsilon, where k may be chosen to be any positive integer. The maintenance algorithms require only a constant number of rotations per updating operati ..."
Abstract

Cited by 11 (1 self)
 Add to MetaCart
First we present a generalization of symmetric binary Btrees, SBB(k) trees. The obtained structure has a height of only \Sigma (1 + 1k) log(n + 1)\Upsilon, where k may be chosen to be any positive integer. The maintenance algorithms require only a constant number of rotations per updating operation in the worst case. These properties together with the fact that the structure is relatively simple to implement makes it a useful alternative to other search trees in practical applications. Then, by using an SBB(k)tree with a varying k we achieve a structure with a logarithmic amortized cost per update and a height of log n + o(log n). This result is an improvement of the upper bound on the height of a dynamic binary search tree. By maintaining two trees simultaneously the amortized cost is transformed into a worstcase cost. Thus, we have improved the worstcase complexity of the dictionary problem.
Memory Reference Locality in Binary Search Trees
, 1995
"... Balanced binary search trees are widely used main memory index structures. They provide for logarithmic cost for searching, insertion, deletion, and efficient ordered scanning of keys. Long term trends in computer technology have emphasized the effect of memory reference locality on algorithm perfor ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
Balanced binary search trees are widely used main memory index structures. They provide for logarithmic cost for searching, insertion, deletion, and efficient ordered scanning of keys. Long term trends in computer technology have emphasized the effect of memory reference locality on algorithm performance. For example, the search performance of large structurally equivalent binary trees can double if nodes are located optimally in memory relative to each other. Unfortunately the traditional Random Access Memory (RAM) model cannot distinguish algorithms with good memory reference locality from algorithms with poor memory reference locality. We therefore define a new ...
Concurrent Perfect Balancing of Binary Search Trees
"... When a balanced data structure is updated and searched concurrently, updating and balancing should be decoupled so as to make updating faster. The balancing is done by special maintenance processes that run concurrently with the search and update tasks. We show that it is not necessary to use a wea ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
When a balanced data structure is updated and searched concurrently, updating and balancing should be decoupled so as to make updating faster. The balancing is done by special maintenance processes that run concurrently with the search and update tasks. We show that it is not necessary to use a weak balance condition like AVL or redblack condition, since balancing a binary tree perfectly so that the search paths become as short as possible is not much more expensive, that is, a process must lock only 5 nodes at a time even when perfect balance is desired. In contrast to other algorithms that perfectly balance a binary search tree, our algorithm keeps the tree (weakly) balanced during the further balancing. This is important if the data structure is used by concurrent search and update processes.
Binary Search Tree Balancing Methods: A Critical Study
"... Binary search tree is a bestsuited data structure for data storage and retrieval when entire tree could be accommodated in the primary memory. However, this is true only when the tree is heightbalanced. Lesser the height faster the search will be. Despite of the wide popularity of Binary search tr ..."
Abstract
 Add to MetaCart
Binary search tree is a bestsuited data structure for data storage and retrieval when entire tree could be accommodated in the primary memory. However, this is true only when the tree is heightbalanced. Lesser the height faster the search will be. Despite of the wide popularity of Binary search trees there has been a major concern to maintain the tree in proper shape. In worst case, a binary search tree may reduce to a linear link list, thereby reducing search to be sequential. Unfortunately, structure of the tree depends on nature of input. If input keys are not in random order the tree will become higher and higher on one side. In addition to that, the tree may become unbalanced after a series of operations like insertions and deletions. To maintain the tree in optimal shape many algorithms have been presented over the years. Most of the algorithms are static in nature as they take a whole binary search tree as input to create a balanced version of the tree. In this paper, few techniques have been discussed and analyzed in terms of time and space requirement. Key words:
Maintaining alphabalanced Trees by Partial Rebuilding
 International Journal of Computer Mathematics
, 1991
"... The balance criterion defining the class of ffbalanced trees states that the ratio between the shortest and longest paths from a node to a leaf be at least ff. We show that a straightforward use of partial rebuilding for maintenance of ffbalanced trees requires an amortized cost of \Omega\Gamma ..."
Abstract
 Add to MetaCart
The balance criterion defining the class of ffbalanced trees states that the ratio between the shortest and longest paths from a node to a leaf be at least ff. We show that a straightforward use of partial rebuilding for maintenance of ffbalanced trees requires an amortized cost of \Omega\Gamma p n) per update. By slight modifications of the maintenance algorithms the cost can be reduced to O(log n) for any value of ff, 0 ! ff ! 1. KEY WORDS ffbalanced trees, partial rebuilding, search trees. CR CATEGORIES: E.1, F.2, I.1.2. 1 Introduction In his thesis Olivie [9] introduced a class of binary search trees, which he calls ffbalanced trees, or ffBBtrees. Let h(v) denote the length for the longest path from a node v to a leaf and let s(v) denote the length of the shortest path. We give a formal definition of ffbalanced trees below. Definition 1 A binary tree is ffbalanced if the following is true for each node v in the tree: s(v) h(v) ff; h(v) 1 1 \Gamma ff (1) h(v) \...
ISA[k] Trees: a Class of Binary Search Trees with Minimal or Near Minimal Internal Path Length
, 1993
"... this paper we propose relaxing the requirement of inserting all nodes on one level before going to the next level. This leads to a new class of binary search trees called ISA[k] trees. We investigated the average locate cost per node, average shift cost per node, total insertion cost, and average su ..."
Abstract
 Add to MetaCart
this paper we propose relaxing the requirement of inserting all nodes on one level before going to the next level. This leads to a new class of binary search trees called ISA[k] trees. We investigated the average locate cost per node, average shift cost per node, total insertion cost, and average successful search cost for ISA[k] trees. We also present an insertion algorithm with associated predecessor and successor functions for ISA[k] trees. For large binary search trees (over 160 nodes) our results suggest the use of ISA[2] or ISA[3] trees for best performance
On Consulting a Set of Experts and Searching
, 1996
"... Two chapters of this thesis analyze expert consulting problems via game theoretic models; the first points out a close connection between the problem of consulting a set of experts and the problem of searching. The last chapter presents a solution to the dictionary problem of supporting and update ( ..."
Abstract
 Add to MetaCart
Two chapters of this thesis analyze expert consulting problems via game theoretic models; the first points out a close connection between the problem of consulting a set of experts and the problem of searching. The last chapter presents a solution to the dictionary problem of supporting and update (Insert and Delete) operations on a set of key values. The first chapter shows...