scispace - formally typeset
Search or ask a question
Book ChapterDOI

Fractional Cascading Simplified

08 Jul 1992-pp 212-220
TL;DR: This work gives an alternate implementation of the fractional cascading data-structure of Chazelle and Guibas to do iterative search for a key in multiple ordered lists and uses tools from branching process theory and derive some useful asymptotic bounds.
Abstract: We give an alternate implementation of the fractional cascading data-structure of Chazelle and Guibas to do iterative search for a key in multiple ordered lists. The construction of our data-structure uses randomization and simplifies the algorithm of Chazelle and Guibas vastly making it practical to implement. Although our bounds are asymptotically similar to the earlier ones, there are improvements in the constant factors. Our analysis is novel and captures some of the inherent difficulties associated with the fractional casading data structure. In particular, we use tools from branching process theory and derive some useful asymptotic bounds. The probability of deviation from the expected performance bounds decreases rapidly with number of keys.
Citations
More filters
Book ChapterDOI
11 Aug 1993
TL;DR: These results are used to eliminate amortization from the general schemes of [13] for making linked data structures partially and fully persistent on a pointer machine, the monotonie list labeling problem and the fully persistent disjoint set union-find problem.
Abstract: We explore a family of combinatorial “pebble” games associated with eliminating amortization from data structures in general, continuing a line of research initiated in [10, 21, 8] These results are used to eliminate amortization from the general schemes of [13] for making linked data structures partially and fully persistent on a pointer machine, the monotonie list labeling problem [5, 28, 10] and the fully persistent disjoint set union-find problem [19]

5 citations

Journal ArticleDOI
TL;DR: By improving the bottleneck, it is proved that an arbitrary horizontal segment can be inserted into this data structure without invoking an expensive sorting process.

3 citations

Book ChapterDOI
11 Mar 2001
TL;DR: By improving the bottle-neck, it is proved that an arbitrary horizontal segment can be inserted into this data structure without invoking an expensive sorting process and has applications in all areas of pattern recognition and image processing involving geometric objects.
Abstract: The data structure that is probably most used in the pattern recognition and image processing of geometric objects is the segment tree and its optimized variant, the "layered segment tree". In all the versions currently known except the work in [8], these structures do not operate in real time. Even in the best known scheme [8], although the structure can be implemented in real time and in an on-line fashion, the operation of "insertion" involves the sorting of the data representations of the line segments in the tree. In essence, for all the reported algorithms, there is no known strategy to insert the segments one by one, other than the trivial strategy of processing them all together as in a batched-mode. In this paper we present a strategy by which all the operations done on the tree can be done efficiently, Indeed, by improving the bottle-neck, we prove that an arbitrary horizontal segment can be inserted into this data structure without invoking an expensive sorting process. We show that while this is accomplished by maintaining the same space and query complexity of the best-known algorithm, the version presented here is applicable to on-line real-time processing of line segments. The paper thus has applications in all areas of pattern recognition and image processing involving geometric objects.
References
More filters
Journal ArticleDOI
TL;DR: Skip lists as mentioned in this paper are data structures that use probabilistic balancing rather than strictly enforced balancing, and the algorithms for insertion and deletion in skip lists are much simpler and significantly faster than equivalent algorithms for balanced trees.
Abstract: Skip lists are data structures that use probabilistic balancing rather than strictly enforced balancing. As a result, the algorithms for insertion and deletion in skip lists are much simpler and significantly faster than equivalent algorithms for balanced trees.

1,113 citations

Journal ArticleDOI
TL;DR: This paper shows that, if ordered lists can be put in a one-to-one correspondence with the nodes of a graph of degreed so that the iterative search always proceeds along edges of that graph, then this structure can be built, called afractional cascading structure, in which all original searches after the first can be carried out at only logd extra cost per search.
Abstract: In computational geometry many search problems and range queries can be solved by performing an iterative search for the same key in separate ordered lists. In this paper we show that, if these ordered lists can be put in a one-to-one correspondence with the nodes of a graph of degreed so that the iterative search always proceeds along edges of that graph, then we can do much better than the obvious sequence of binary searches. Without expanding the storage by more than a constant factor, we can build a data-structure, called afractional cascading structure, in which all original searches after the first can be carried out at only logd extra cost per search. Several results related to the dynamization of this structure are also presented. A companion paper gives numerous applications of this technique to geometric problems.

464 citations

Journal ArticleDOI
TL;DR: This paper presents several applications offractional cascading, a new searching technique which has been described in a companion paper, which center around a variety of geometric query problems.
Abstract: This paper presents several applications offractional cascading, a new searching technique which has been described in a companion paper. The applications center around a variety of geometric query problems. Examples include intersecting a polygonal path with a line, slanted range search, orthogonal range search, computing locus functions, and others. Some results on the optimality of fractional cascading, and certain extensions of the technique for retrieving additional information are also included.

123 citations

Proceedings ArticleDOI
01 Jun 1985

36 citations

01 Jan 1985
TL;DR: An amortized analysis of update cost in fractional cascading is given and it is shown that insertions take 0( 1) isortized time and insertions and deletions take0( log log X) amortization time.
Abstract: Many data structures used in computational geometry are quite involved and therefore hard to dynamize. The purpose of this paper is twofold. In section 1 we describe dynamic fractional cascading. Fractional cascading was recently introduced by Chaeelle/Cuibas as a common framework for many data structures in computational geometry. They show that it allows to derive numerous old and new results in a uniform way and thus enhance our understanding of geometric data structures tremendously. They distill a common principle which was implicitely used previously in Vaishnavi/Wood, Willard, Edelsbrunner/Guibas/ Stolfi, Imai/Asano and others. In section 2 we give an amortized analysis of update cost in fractional cascading and show that insertions take 0( 1) amortized time and insertions and deletions take 0( log log X) amortized time. The analysis is based on the technique developed in Maier/Salveter and fluddleston/Mehlhorn (cf. also Mehlhorn, Vol 1) for analyzing amortized update cost in balanced trees. The efficient set splitting algorithm of Imai/Asano (a new set splitting and union algorithm based on the O(log log N) priority queue of v. Emde Boas) is used as an auxiliary data structure in order to support efficient insertions (insertions and deletions). In section 3 we will briefiy survey two recent attempts for dynamizing the searching problem in planar subdivisions.

35 citations


"Fractional Cascading Simplified" refers methods in this paper

  • ...Unfortunately (as in the case of [1]), the bottleneck is maintaining the correspondence between the A. and C.. In particular, we are unable to analyze the number of Cpointer updates in the case of inserting or deleting a record from C.. Using the priority queue of Fries et al. [ 4 ] to maintain this correspondence, we get similar bounds....

    [...]