Binary Search Tree Research Papers (original) (raw)

This paper develops the multidimensional binary search tree (or k -d tree, where k is the dimensionality of the search space) as a data structure for storage of information to be retrieved by associative searches. The k -d tree is defined... more

This paper develops the multidimensional binary search tree (or k -d tree, where k is the dimensionality of the search space) as a data structure for storage of information to be retrieved by associative searches. The k -d tree is defined and examples are given. It is shown to be quite efficient in its storage requirements. A significant advantage of this structure is that a single data structure can handle many types of queries very efficiently. Various utility algorithms are developed; their proven average running times in an n record file are: insertion, O (log n ); deletion of the root, O ( n ( k -1)/ k ); deletion of a random node, O (log n ); and optimization (guarantees logarithmic performance of searches), O ( n log n ). Search algorithms are given for partial match queries with t keys specified [proven maximum running time of O ( n ( k - t )/ k )] and for nearest neighbor queries [empirically observed average running time of O (log n ).] These performances far surpass the b...

A searching algorithm is presented for determining which members of a set of n points in an N dimensional space lie inside a prescribed space subregion. The algorithm is then extended to handle finite size objects as well as points. In... more

A searching algorithm is presented for determining which members of a set of n points in an N dimensional space lie inside a prescribed space subregion. The algorithm is then extended to handle finite size objects as well as points. In this form it is capable of solving problems such as that of finding the objects from a given set which intersect with a prescribed object. The suitability of the algorithm is demonstrated for the problem of three dimensional unstructured mesh generation using the advancing front method.

Abstract: Trees are frequently used data structures for fast access to the stored data. Data structures like arrays, vectors and linked lists are limited by the trade-off between the ability to perform a fast search and the ability to... more

Abstract: Trees are frequently used data structures for fast access to the stored data. Data structures like arrays, vectors and linked lists are limited by the trade-off between the ability to perform a fast search and the ability to resize easily. Binary Search Trees are an ...

For certain algorithms such as sorting and searching, the parameters of the input probability distribution, in addition to the size of the input, have been found to influence the complexity of the underlying algorithm. The present paper... more

For certain algorithms such as sorting and searching, the parameters of the input probability distribution, in addition to the size of the input, have been found to influence the complexity of the underlying algorithm. The present paper makes a statistical comparative study on parameterized complexity between linear and binary search algorithms for binomial inputs.

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... more

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...

Abstract: Trees are frequently used data structures for fast access to the stored data. Data structures like arrays, vectors and linked lists are limited by the trade-off between the ability to perform a fast search and the ability to... more

Abstract: Trees are frequently used data structures for fast access to the stored data. Data structures like arrays, vectors and linked lists are limited by the trade-off between the ability to perform a fast search and the ability to resize easily. Binary Search Trees are an ...

Suffix trees and suffix arrays are classical data structures that are used to represent the set of suffixes of a given string, and thereby facilitate the efficient solution of various string processing problems --- in particular online... more

Suffix trees and suffix arrays are classical data structures that are used to represent the set of suffixes of a given string, and thereby facilitate the efficient solution of various string processing problems --- in particular online string searching. Here we investigate the potential of suitably adapted binary search trees as competitors in this context. The suffix binary search tree (SBST) and its balanced counterpart, the suffix AVL-tree, are conceptually simple, relatively easy to implement, and offer time and space efficiency to rival suffix trees and suffix arrays, with distinct advantages in some circumstances --- for instance in cases where only a subset of the suffixes need be represented. Construction of a suffix BST can be achieved in O(L) time, where L is the path length of the tree, and in the case of a suffix AVL-tree this is O(n log n), where n is the length of the input string. Searching for an m- long substring requires O(m + l) time, where l is the length of the ...

In this paper, we have compared r.e. sets based on their enumeration orders with Turing machines. Accordingly, we have defined novel concept uniformity for Turing machines and r.e. sets and have studied some relationships between... more

In this paper, we have compared r.e. sets based on their enumeration orders with Turing machines. Accordingly, we have defined novel concept uniformity for Turing machines and r.e. sets and have studied some relationships between uniformity and both one-reducibility and Turing reducibility. Furthermore, we have defined type-2 uniformity concept and studied r.e. sets and Turing machines based on this concept. In the end, we have introduced a new structure called Turing Output Binary Search Tree that helps us lighten some ideas. Comment: 15 pages; submitted to Mathematical Logic Quarterly

We present a detailed study of left-right-imbalance measures for random binary search trees under the random permutation model, i.e., where binary search trees are generated by random permutations of f1;2; : : : ; ng. For random binary... more

We present a detailed study of left-right-imbalance measures for random binary search trees under the random permutation model, i.e., where binary search trees are generated by random permutations of f1;2; : : : ; ng. For random binary search trees of size n we study (i) the difierence between the left and the right depth of a randomly chosen node,

The number of descendants of a node in a binary search tree (BST) is the size of the subtree having this node as a root; the number of ascendants is the number of nodes on the path connecting this node with the root. Using a purely... more

The number of descendants of a node in a binary search tree (BST) is the size of the subtree having this node as a root; the number of ascendants is the number of nodes on the path connecting this node with the root. Using a purely combinatorial approach (generating functions and dierential equations) we are able to extend previous results.

We study recursions that are traditional in the context of binary search trees and quicksort with the (non-standard) toll function Hn.

Abstract: Trees are frequently used data structures for fast access to the stored data. Data structures like arrays, vectors and linked lists are limited by the trade-off between the ability to perform a fast search and the ability to... more

Abstract: Trees are frequently used data structures for fast access to the stored data. Data structures like arrays, vectors and linked lists are limited by the trade-off between the ability to perform a fast search and the ability to resize easily. Binary Search Trees are an ...

Consider a set A = {A1, A2,...,AN} of records, where each record is identified by a unique key. The records are accessed based on a set of access probabilities S = (s1,s2,...,sN) and are to be arranged lexicographically using a Binary... more

Consider a set A = {A1, A2,...,AN} of records, where each record is identified by a unique key. The records are accessed based on a set of access probabilities S = (s1,s2,...,sN) and are to be arranged lexicographically using a Binary Search Tree (BST). If S is known a priori, it is well known (10) that an optimal BST may