Results 1 - 10
of
12
Tight(er) Worst-case Bounds on Dynamic Searching and Priority Queues
- In STOC’2000
, 2000
"... We introduce a novel technique for converting static polynomial space search structures for ordered sets into fullydynamic linear space data structures. Based on this we present optimal bounds for dynamic integer searching, including finger search, and exponentially improved bounds for priority queu ..."
Abstract
-
Cited by 35 (2 self)
- Add to MetaCart
We introduce a novel technique for converting static polynomial space search structures for ordered sets into fullydynamic linear space data structures. Based on this we present optimal bounds for dynamic integer searching, including finger search, and exponentially improved bounds for priority queues.
Finger Search Trees with Constant Insertion Time
- In Proc. 9th Annual ACM-SIAM Symposium on Discrete Algorithms
, 1997
"... We consider the problem of implementing finger search trees on the pointer machine, i.e., how to maintain a sorted list such that searching for an element x, starting the search at any arbitrary element f in the list, only requires logarithmic time in the distance between x and f in the list. We pr ..."
Abstract
-
Cited by 14 (3 self)
- Add to MetaCart
We consider the problem of implementing finger search trees on the pointer machine, i.e., how to maintain a sorted list such that searching for an element x, starting the search at any arbitrary element f in the list, only requires logarithmic time in the distance between x and f in the list. We present the first pointer-based implementation of finger search trees allowing new elements to be inserted at any arbitrary position in the list in worst case constant time. Previously, the best known insertion time on the pointer machine was O(log n), where n is the total length of the list. On a unit-cost RAM, a constant insertion time has been achieved by Dietz and Raman by using standard techniques of packing small problem sizes into a constant number of machine words. Deletion of a list element is supported in O(log n) time, which matches the previous best bounds. Our data structure requires linear space. 1 Introduction A finger search tree is a data structure which stores a sorte...
Dynamic ordered sets with exponential search trees
- CoRR cs.DS/0210006. See also FOCS’96, STOC’00
, 2002
"... We introduce exponential search trees as a novel technique for converting static polynomial space search structures for ordered sets into fully-dynamic linear space data structures. This leads to an optimal bound of O ( � log n / log log n) for searching and updating a dynamic set X of n integer ke ..."
Abstract
-
Cited by 14 (1 self)
- Add to MetaCart
We introduce exponential search trees as a novel technique for converting static polynomial space search structures for ordered sets into fully-dynamic linear space data structures. This leads to an optimal bound of O ( � log n / log log n) for searching and updating a dynamic set X of n integer keys in linear space. Searching X for an integer y means finding the maximum key in X which is smaller than or equal to y. This problem is equivalent to the standard text book problem of maintaining an ordered set. The best previous deterministic linear space bound was O(log n / log log n) due to Fredman and Willard from STOC 1990. No better deterministic search bound was known using polynomial space. We also get the following worst-case linear space trade-offs between the number n, the word length W, and the maximal key U < 2W: O(min{log log n + log log U log n / log W, log log n · log log log U}). These trade-offs are, however, not likely to be optimal. Our results are generalized to finger searching and string searching, providing optimal results for both in terms of n.
Improved algorithms for the k-maximum subarray problem for small k
- In Proceedings of the 11th Annual International Conference on Computing and Combinatorics, volume 3595 of LNCS
, 2005
"... Abstract. The maximum subarray problem for a one- or two-dimensional array is to find the array portion that maiximizes the sum of array elements in it. The K-maximum subarray problem is to find the K subarrays with largest sums. We improve the time complexity for the one-dimensional case from O(min ..."
Abstract
-
Cited by 13 (5 self)
- Add to MetaCart
Abstract. The maximum subarray problem for a one- or two-dimensional array is to find the array portion that maiximizes the sum of array elements in it. The K-maximum subarray problem is to find the K subarrays with largest sums. We improve the time complexity for the one-dimensional case from O(min{K + n log 2 n, n √ K}) for 0 ≤ K ≤ n(n − 1)/2 to O(n log K + K 2) for K ≤ n. The latter is better when K ≤ √ n log n. If we simply extend this result to the two-dimensional case, we will have the complexity of O(n 3 log K + K 2 n 2).We improve this complexity to O(n 3) for K ≤ √ n. 1
Fast Meldable Priority Queues
, 1995
"... We present priority queues that support the operations MakeQueue, FindMin, Insert and Meld in worst case time O(1) and Delete and DeleteMin in worst case time O(log n). They can be implemented on the pointer machine and require linear space. The time bounds are optimal for all implementations wh ..."
Abstract
-
Cited by 9 (1 self)
- Add to MetaCart
We present priority queues that support the operations MakeQueue, FindMin, Insert and Meld in worst case time O(1) and Delete and DeleteMin in worst case time O(log n). They can be implemented on the pointer machine and require linear space. The time bounds are optimal for all implementations where Meld takes worst case time o(n).
Optimal Finger Search Trees in the Pointer Machine
, 2002
"... We develop a new finger search tree with worst case constant update time in the Pointer Machine (PM) model of computation. This was a major problem in the field of Data Structures and was tantalizingly open for over twenty years, while many attempts by researchers were made to solve it. The result c ..."
Abstract
-
Cited by 9 (2 self)
- Add to MetaCart
We develop a new finger search tree with worst case constant update time in the Pointer Machine (PM) model of computation. This was a major problem in the field of Data Structures and was tantalizingly open for over twenty years, while many attempts by researchers were made to solve it. The result comes as a consequence of the innovative mechanism that guides the rebalancing operations, combined with incremental multiple splitting and fusion techniques over nodes.
Improved Bounds for Finger Search on a RAM
- In Algorithms – ESA 2003, LNCS Vol. 2832 (Springer 2003
, 2003
"... We present a new finger search tree with O(1) worst-case update time and O(log log d) expected search time with high probability in the Random Access Machine (RAM) model of computation for a large class of input distributions. The parameter d represents the number of elements (distance) between ..."
Abstract
-
Cited by 5 (5 self)
- Add to MetaCart
We present a new finger search tree with O(1) worst-case update time and O(log log d) expected search time with high probability in the Random Access Machine (RAM) model of computation for a large class of input distributions. The parameter d represents the number of elements (distance) between the search element and an element pointed to by a finger, in a finger search tree that stores n elements. For the need of the analysis we model the updates by a "balls and bins" combinatorial game that is interesting in its own right as it involves insertions and deletions of balls according to an unknown distribution.
Binary search trees: How low can you go?
- SWAT'96, LNCS
, 1996
"... We prove that no algorithm for balanced binary search trees performing insertions and deletions in amortized time O(f(n)) can guarantee a height smaller than dlog(n + 1) + 1=f(n)e for all n. We improve the existing upper bound to dlog(n + 1) + log 2 (f(n))=f(n)e, thus almost matching our lower boun ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
We prove that no algorithm for balanced binary search trees performing insertions and deletions in amortized time O(f(n)) can guarantee a height smaller than dlog(n + 1) + 1=f(n)e for all n. We improve the existing upper bound to dlog(n + 1) + log 2 (f(n))=f(n)e, thus almost matching our lower bound. We also improve the existing upper bound for worst case algorithms, and give a lower bound for the semi-dynamic case.
Indexing Mobile Objects on the Plane Revisited
"... Abstract. We present a set of time-efficient approaches to index objects moving on the plane to efficiently answer range queries about their future positions. Our algorithms are based on previously described solutions as well as on the employment of efficient data structures. Finally, an experimenta ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
Abstract. We present a set of time-efficient approaches to index objects moving on the plane to efficiently answer range queries about their future positions. Our algorithms are based on previously described solutions as well as on the employment of efficient data structures. Finally, an experimental evaluation is included that shows the performance, scalability and efficiency of our methods. Keywords: Spatio-Temporal Databases, Indexing. 1
Optimal Finger Search Trees in the Pointer Machine
"... We develop a new finger search tree with worst-case constant update time in the Pointer Machine (PM) model of computation. This was a major problem in the field of Data Structures and was tantalizingly open for over twenty years while many attempts by researchers were made to solve it. The result co ..."
Abstract
- Add to MetaCart
We develop a new finger search tree with worst-case constant update time in the Pointer Machine (PM) model of computation. This was a major problem in the field of Data Structures and was tantalizingly open for over twenty years while many attempts by researchers were made to solve it. The result comes as a consequence of the innovative mechanism that guides the rebalancing operations combined with incremental multiple splitting and fusion techniques over nodes.

