## Dynamic Trees and Dynamic Point Location (1991)

### Cached

### Download Links

- [www.cgc.cs.jhu.edu]
- [www.cs.jhu.edu]
- [www.cs.brown.edu]
- [www.cs.brown.edu]
- DBLP

### Other Repositories/Bibliography

Venue: | In Proc. 23rd Annu. ACM Sympos. Theory Comput |

Citations: | 43 - 9 self |

### BibTeX

@INPROCEEDINGS{Goodrich91dynamictrees,

author = {Michael T. Goodrich and Roberto Tamassia},

title = {Dynamic Trees and Dynamic Point Location},

booktitle = {In Proc. 23rd Annu. ACM Sympos. Theory Comput},

year = {1991},

pages = {523--533}

}

### OpenURL

### Abstract

This paper describes new methods for maintaining a point-location data structure for a dynamically-changing monotone subdivision S. The main approach is based on the maintenance of two interlaced spanning trees, one for S and one for the graphtheoretic planar dual of S. Queries are answered by using a centroid decomposition of the dual tree to drive searches in the primal tree. These trees are maintained via the link-cut trees structure of Sleator and Tarjan, leading to a scheme that achieves vertex insertion/deletion in O(log n) time, insertion/deletion of k-edge monotone chains in O(log n + k) time, and answers queries in O(log 2 n) time, with O(n) space, where n is the current size of subdivision S. The techniques described also allow for the dual operations expand and contract to be implemented in O(log n) time, leading to an improved method for spatial point-location in a 3-dimensional convex subdivision. In addition, the interlaced-tree approach is applied to on-line point-lo...

### Citations

1762 |
Computational Geometry: An Introduction
- Preparata, Shamos
- 1985
(Show Context)
Citation Context ...le updating that structure in a dynamic fashion (e.g., see [13]). A problem with tremendous potential for dynamization is planar point location, a classic problem in computational geometry (e.g., see =-=[1, 17, 28, 33, 37]). Given a-=- subdivision S of the plane into "cells", described by a total of n line segments, the problem is to preprocess S to allow for efficiently naming the cell containing a query point p. An impo... |

1258 |
Graph Theory with Applications
- Bondy, Murty
- 1976
(Show Context)
Citation Context ...nd represent T as an edge-ordered tree rooted at the sink vertex t, where the ordering of the edges incident on a vertex is given by the planar embedding. 2. Construct the graph-theoretic planar dual =-=[5]-=- of S, but exclude any edges dual to edges in T . This defines a spanning tree D on the dual graph [19], called the dual spanning tree of T (see Fig. 2). Each node of D is a region r of S, and each ed... |

688 | Algorithms in Combinatorial Geometry - Edelsbrunner - 1987 |

456 |
Primitives for the Manipulation of General Subdivisions and the Computation of Voronoi Diagrams
- Guibas, Stol
- 1985
(Show Context)
Citation Context ... as the insertion or deletion of a monotone chain of k edges. In addition, we are also interested in operations that are duals to edge insertion and deletion, as in the framework of Guibas and Stolfi =-=[25]-=-, where we allow for vertex expansion and contraction: an expansion splits a vertex v into two new vertices connected by an edge, and a contraction merges two adjacent vertices into a new vertex. Thes... |

296 |
A data structure for dynamic trees
- Sleator, Tarjan
- 1983
(Show Context)
Citation Context ...the primal tree. We dynamize this approach using the edge-ordered dynamic tree data structure of Eppstein et al. [19], which is an extension of the link-cut trees data structure of Sleator and Tarjan =-=[19, 42]. We use t-=-he "built-in" operations of link, cut, split, and merge to implement both our updates and queries. Our methods improve the previous bounds for dynamically maintaining monotone subdivisions. ... |

289 |
Triangulating a Simple Polygon in Linear Time
- Chazelle
- 1991
(Show Context)
Citation Context ...ut loss of generality, we assume that S does not have horizontal edges. General subdivisions can be handled via a preliminary triangulation step, which takes O(n) time if the subdivision is connected =-=[7]-=-, and O(n log n) time otherwise [22]. We describe here a static method that uses O(n log n) space and preprocessing time and supports point-location queries in O(log 2 n) time. We will show in the sub... |

255 |
Optimal Search in Planar Subdivision
- Kirkpatrick
- 1983
(Show Context)
Citation Context ... the planar subdivision is a monotone polygon with respect to the y-axis, that is, the boundary of each face is intersected at most twice by any horizontal line. Given such a subdivision, Kirkpatrick =-=[26]-=- shows that one can construct an O(n)-space structure in O(n) time that allows O(log n)-time point-location queries. Edelsbrunner, Guibas, and Stolfi [18] show that one can achieve these same bounds b... |

246 | Making data structures persistent
- Driscoll, Sarnak, et al.
- 1989
(Show Context)
Citation Context ...rata [27]. Cole [15] and Sarnak and Tarjan [41] independently show that One can also achieve these bounds after O(n log n) preprocessing by applying a persistence technique (e.g., see Driscoll et al. =-=[16]-=-) to a simple plane-sweeping procedure (as an example of a static!dynamic!static conversion). (See [17, 28, 37] for other references on this important problem.) We are interested in maintaining a mono... |

200 |
Linear-time algorithms for linear programming in r 3 and related problems
- Megiddo
- 1983
(Show Context)
Citation Context ...A centroid edge of T is an edge e whose removal partitions T into two trees of size at most 1 + 2n=3 each. It is well-known that if n ? 1, such an edge exists and can be found in time O(n) (e.g., see =-=[6, 31]-=-). A centroid decomposition tree for T is a rooted binary tree B recursively defined as follows: If T has a single vertex v, then B consists of a single leaf node that stores vertex v. Otherwise, let ... |

176 |
Priority Search Trees
- McCreight
- 1985
(Show Context)
Citation Context ...ime to O(log n log log n) and increasing the query time to O(log 2 n log log n). Both of their methods are based on a search strategy derived from the priority search tree data structure of McCreight =-=[30]-=-. They dynamize this approach with the BB(ff) tree data structure (e.g., see [32]), using the approach of Willard and Lueker [43] to spread local updates over future operations, and the method of Over... |

172 | Planar point location using persistent search trees - Sarnak, Tarjan - 1986 |

158 |
Optimal point location on a monotone subdivision
- Edelsbunner, Guibas, et al.
- 1986
(Show Context)
Citation Context ...l line. Given such a subdivision, Kirkpatrick [26] shows that one can construct an O(n)-space structure in O(n) time that allows O(log n)-time point-location queries. Edelsbrunner, Guibas, and Stolfi =-=[18]-=- show that one can achieve these same bounds by applying the fractional cascading paradigm of Chazelle and Guibas [8, 9] to the chain-method of Lee and Preparata [27]. Cole [15] and Sarnak and Tarjan ... |

154 | Fractional cascading: I. A data structuring technique
- Chazelle, Guibas
- 1986
(Show Context)
Citation Context ...hat allows O(log n)-time point-location queries. Edelsbrunner, Guibas, and Stolfi [18] show that one can achieve these same bounds by applying the fractional cascading paradigm of Chazelle and Guibas =-=[8, 9]-=- to the chain-method of Lee and Preparata [27]. Cole [15] and Sarnak and Tarjan [41] independently show that One can also achieve these bounds after O(n log n) preprocessing by applying a persistence ... |

145 | Data Structures and Algorithms 1: Sorting and Searching. EATCS,Monographs on Theoretical Computer Science - Mehlhorn - 1984 |

129 |
The Design of Dynamic Data Structures
- Overmars
- 1983
(Show Context)
Citation Context ...y dynamize this approach with the BB(ff) tree data structure (e.g., see [32]), using the approach of Willard and Lueker [43] to spread local updates over future operations, and the method of Overmars =-=[34] to perfor-=-m global rebuilding (at the same time) before the "current" data structure becomes too unbalanced. Their methods do not seem to extend to the dual update operations, however, nor does it see... |

83 | Dynamic Algorithms in Computational Geometry
- Chiang, Tamassia
- 1991
(Show Context)
Citation Context ...ion in algorithmic research has been to show how one can efficiently maintain various properties of a combinatoric or geometric structure while updating that structure in a dynamic fashion (e.g., see =-=[13]). A -=-problem with tremendous potential for dynamization is planar point location, a classic problem in computational geometry (e.g., see [1, 17, 28, 33, 37]). Given a subdivision S of the plane into "... |

81 | Linear Time Algorithms for Visibility and Shortest Path Problems Inside Triangulated Simple Polygons - Guibas, Hershberger, et al. - 1987 |

77 |
Visibility and intersection problems in plane geometry
- Chazelle, Guibas
(Show Context)
Citation Context ...s edge e, and the left and right subtrees of B are centroid trees for T ′ and T ′′ , respectively. The centroid decomposition tree B has O(log n) height and can be constructed in O(n) time (e.g., see =-=[10, 24]-=-). 2.3. Dynamic trees. Dynamic trees [42] are a versatile dynamic data structure for maintaining a forest of rooted trees. We shall use an extension of dynamic trees, called edge-ordered dynamic trees... |

75 |
A Theorem on Polygon Cutting with Applications
- Chazelle
- 1982
(Show Context)
Citation Context ...A centroid edge of T is an edge e whose removal partitions T into two trees of size at most 1 + 2n=3 each. It is well-known that if n ? 1, such an edge exists and can be found in time O(n) (e.g., see =-=[6, 31]-=-). A centroid decomposition tree for T is a rooted binary tree B recursively defined as follows: If T has a single vertex v, then B consists of a single leaf node that stores vertex v. Otherwise, let ... |

65 |
Triangulating a Simple Polygon
- Garey, Johnson, et al.
- 1978
(Show Context)
Citation Context ...at S does not have horizontal edges. General subdivisions can be handled via a preliminary triangulation step, which takes O(n) time if the subdivision is connected [7], and O(n log n) time otherwise =-=[22]-=-. We describe here a static method that uses O(n log n) space and preprocessing time, and supports point-location queries in O(log 2 n) time. We will show in the subsequent section how to dynamize thi... |

64 | Maintenance of a Minimum Spanning Forest in a Dynamic Planar Graph
- Eppstein, Italiano, et al.
- 1992
(Show Context)
Citation Context ... are performed by using a centroid decomposition of the dual tree to drive searches in the primal tree. We dynamize this approach using the edge-ordered dynamic tree data structure of Eppstein et al. =-=[19], which is-=- an extension of the link-cut trees data structure of Sleator and Tarjan [19, 42]. We use the "built-in" operations of link, cut, split, and merge to implement both our updates and queries. ... |

61 |
Location of a Point in a Planar Subdivision and its Applications
- Lee, Preparata
- 1977
(Show Context)
Citation Context ... Edelsbrunner, Guibas, and Stolfi [18] show that one can achieve these same bounds by applying the fractional cascading paradigm of Chazelle and Guibas [8, 9] to the chain-method of Lee and Preparata =-=[27]-=-. Cole [15] and Sarnak and Tarjan [41] independently show that One can also achieve these bounds after O(n log n) preprocessing by applying a persistence technique (e.g., see Driscoll et al. [16]) to ... |

51 | Adding range restriction capability to dynamic data structures - Willard, Lueker - 1985 |

49 |
Searching and storing similar lists
- Cole
- 1986
(Show Context)
Citation Context ...er, Guibas, and Stolfi [18] show that one can achieve these same bounds by applying the fractional cascading paradigm of Chazelle and Guibas [8, 9] to the chain-method of Lee and Preparata [27]. Cole =-=[15]-=- and Sarnak and Tarjan [41] independently show that One can also achieve these bounds after O(n log n) preprocessing by applying a persistence technique (e.g., see Driscoll et al. [16]) to a simple pl... |

40 |
L.J.: Fractional cascading
- Chazelle, Guibas
- 1986
(Show Context)
Citation Context ...hat allows O(log n)-time point-location queries. Edelsbrunner, Guibas, and Stolfi [18] show that one can achieve these same bounds by applying the fractional cascading paradigm of Chazelle and Guibas =-=[8, 9]-=- to the chain method of Lee and Preparata [27]. Cole [15] and Sarnak and Tarjan [41] independently show that one can also achieve these bounds after O(n log n) preprocessing by applying a per∗Received... |

35 |
An Optimal Worst Case Algorithm for Reporting Intersections of Rectangles
- Bentley, Wood
- 1980
(Show Context)
Citation Context ...t us briefly review previous work on dynamic point location, which we summarize in Table 1.1. Early work on dynamic point location includes a method by Overmars [35], which is based on a segment-tree =-=[4]-=- approach to planar-point location, and achieves an O(log 2 n) query and update time with O(n log n) space. Fries, Mehlhorn, and Naeher [20, 21] present a data structure with O(n) space, O(log 2 n) qu... |

33 |
Dynamic point location in general subdivision
- Baumgarten, Jung, et al.
- 1992
(Show Context)
Citation Context ...is also based on this chain-method, but improves the bounds of Fries et al. by representing the chains topologically rather than geometrically. In their scheme, in1 Type Queries Insert Delete General =-=[3] O(log n log log n) ��-=-�� O(log n log log n) �� O(log 2 n) Connected [11] O(log 2 n) O(log n) O(log n) Connected [12] O(log n) �� O(log 3 n) �� O(log 3 n) Monotone [14] O(log n) �� O(log 2 n) �� O(log 2 ... |

33 |
A New Approach to Planar Point Location
- Preparata
- 1981
(Show Context)
Citation Context ... time, where the time bounds for updates are amortized. Chiang and Tamassia [14] present a dynamic data structure for monotone subdivisions, which is based on the static trapezoid method of Preparata =-=[36]-=- and extends previous work by Preparata and Tamassia [39] on dynamic point location in convex subdivisions with vertices on a fixed set of lines. The operations supported are insertion and deletion of... |

26 |
New Results on Dynamic Planar Point Location
- Cheng, Janardan
- 1990
(Show Context)
Citation Context ...et al. by representing the chains topologically rather than geometrically. In their scheme, in1 Type Queries Insert Delete General [3] O(log n log log n) �� O(log n log log n) �� O(log 2 n) Co=-=nnected [11] O(log 2 n) O(lo-=-g n) O(log n) Connected [12] O(log n) �� O(log 3 n) �� O(log 3 n) Monotone [14] O(log n) �� O(log 2 n) �� O(log 2 n) Convex [39] O(log n + log N) O(log n log N) O(log n log N) Staircas... |

23 |
A balanced search tree with O(1) worstcase update time
- Levcopoulos, Overmars
- 1988
(Show Context)
Citation Context ...(��) that fall between e and f in a data structure that allows O(1) insertion time, given an element's position, and O(log n e ) query time, where n e = O(N) is the number of elements between e an=-=d f [29]. The elements-=- of L(��) between e and f can intuitively be viewed as belonging to a "bucket" for the pair (e; f ). We modify our definition of the AL and AR lists to take advantage of the sublists L 0... |

23 | Fully dynamic point location in a monotone subdivision
- Preparata, Tamassia
- 1989
(Show Context)
Citation Context ...g an approach based on the static chain-method of Lee and Preparata [27]. Neither of these methods seem to extend to the dual update operations of expand and contract, however. Preparata and Tamassia =-=[38]-=- have given techniques for maintaining monotone subdivisions that is also based on this chain-method, but improves the bounds of Fries et al. by representing the chains topologically rather than geome... |

21 | A unified approach to dynamic point location, ray shooting, and shortest paths in planar maps
- Chiang, Preparata, et al.
- 1993
(Show Context)
Citation Context ...lly rather than geometrically. In their scheme, in1 Type Queries Insert Delete General [3] O(log n log log n) �� O(log n log log n) �� O(log 2 n) Connected [11] O(log 2 n) O(log n) O(log n) Co=-=nnected [12] O(log n) �� O(log 3-=- n) �� O(log 3 n) Monotone [14] O(log n) �� O(log 2 n) �� O(log 2 n) Convex [39] O(log n + log N) O(log n log N) O(log n log N) Staircase [2] O(log n) �� O(log n) �� O(log n) Table... |

20 |
Tarjan, Making data structures persistent
- Driscoll, Samak, et al.
- 1986
(Show Context)
Citation Context ... of Naval Research and the Advanced Research Projects Agency contract N00014-91-J-4052, ARPA order 8225. 612sDYNAMIC TREES AND DYNAMIC POINT LOCATION 613 sistence technique (e.g., see Driscoll et al. =-=[16]-=-) to a simple plane-sweeping procedure (as an example of a static→dynamic→static conversion). (See [17, 28, 37] for other references on this important problem.) We are interested in maintaining a mono... |

19 | Computational geometry: a survey
- Lee, Preparata
- 1984
(Show Context)
Citation Context ...le updating that structure in a dynamic fashion (e.g., see [13]). A problem with tremendous potential for dynamization is planar point location, a classic problem in computational geometry (e.g., see =-=[1, 17, 28, 33, 37]-=-). Given a subdivision S of the plane into “cells,” described by a total of n line segments, the problem is to preprocess S to allow for efficiently naming the cell containing a query point p. An impo... |

18 |
Dynamic ray shooting and shortest paths via balanced geodesic triangulations
- Goodrich, Tamassia
- 1993
(Show Context)
Citation Context ...amassia [12] have shown that one can achieve an O(log n) query time in a dynamic environment that allows for ray-shooting queries and subdivision updates in O(log 3 n) time, and Goodrich and Tamassia =-=[23]-=- show how to maintain a similar environment so as to achieve O(log 2 n) time for all updates and queries (using a method built upon the scheme of the present paper). 1.2 Our Results In this paper we s... |

18 |
Range Searching in a Set of Line Segments
- Overmars
- 1985
(Show Context)
Citation Context .... Before we describe our main results, let us briefly review previous work on dynamic point location, which we summarize in Table 1. Early work on dynamic point location includes a method by Overmars =-=[35]-=-, which is based on a segment-tree [4] approach to planar-point location, and achieves an O(log 2 n) query and update time with O(n log n) space. Fries [20] and Fries, Mehlhorn, and Näher [21] present... |

16 |
Efficient point location in a convex spatial cell-complex
- Preparata, Tamassia
- 1992
(Show Context)
Citation Context ... by an edge, and a contraction merges two adjacent vertices into a new vertex. These operations are useful in applying a dynamic point location to spatial point location in 3-dimensional subdivisions =-=[40]-=- via persistence [16]. 1.1. Previous work. Before we describe our main results, let us briefly review previous work on dynamic point location, which we summarize in Table 1. Early work on dynamic poin... |

15 |
Tarjan, Linear-time algorithms for visibility and shortest path problems inside triangulated simple polygons. Algorithmica 2
- Guibas, Hershberger, et al.
(Show Context)
Citation Context ... edge e, and the left and right subtrees of B are centroid trees for T 0 and T 00 , respectively. The centroid decomposition tree B has O(log n) height, and can be constructed in O(n) time (e.g., see =-=[10, 24]-=-). 2.3 Dynamic trees Dynamic trees [42] are a versatile dynamic data structure for maintaining a forest of rooted trees. We shall use an extension of dynamic trees, called edge-ordered dynamic trees [... |

14 | Dynamization of the trapezoid method for planar point location in monotone subdivisions
- Chiang, Tamassia
- 1992
(Show Context)
Citation Context ...ortized bound. Type Queries Insert Delete General [3] O(log nlog log n) Ō(log nlog log n) Ō(log 2 n) Connected [11] O(log 2 n) O(log n) O(log n) Connected [12] O(log n) Ō(log 3 n) Ō(log 3 n) Monotone =-=[14]-=- O(log n) Ō(log 2 n) Ō(log 2 n) Convex [39] O(log n + log N) O(log nlog N) O(log nlog N) Staircase [2] O(log n) Ō(log n) Ō(log n) Preparata and Tamassia [38] have given techniques for maintaining mono... |

13 | Parallel techniques for computational geometry
- Atallah
- 1992
(Show Context)
Citation Context ...le updating that structure in a dynamic fashion (e.g., see [13]). A problem with tremendous potential for dynamization is planar point location, a classic problem in computational geometry (e.g., see =-=[1, 17, 28, 33, 37]). Given a-=- subdivision S of the plane into "cells", described by a total of n line segments, the problem is to preprocess S to allow for efficiently naming the cell containing a query point p. An impo... |

13 |
Sorting and Searching
- Mehlhorn
- 1984
(Show Context)
Citation Context ...Both of their methods are based on a search strategy derived from the priority search tree data structure of McCreight [30]. They dynamize this approach with the BB(ff) tree data structure (e.g., see =-=[32]), using t-=-he approach of Willard and Lueker [43] to spread local updates over future operations, and the method of Overmars [34] to perform global rebuilding (at the same time) before the "current" da... |

9 |
Dynamization of Geometric Data Structures
- Fries, Mehlhorn, et al.
- 1985
(Show Context)
Citation Context ... a method by Overmars [35], which is based on a segment-tree [4] approach to planar-point location, and achieves an O(log 2 n) query and update time with O(n log n) space. Fries, Mehlhorn, and Naeher =-=[20, 21]-=- present a data structure with O(n) space, O(log 2 n) query time, and O(log 4 n) amortized update time (for edge insertion/deletion only), using an approach based on the static chain-method of Lee and... |

9 | The Design of Dynamic Data - Overmars - 1983 |

8 | Biased finger trees and three-dimensional layers of maxima
- Atallah, Goodrich, et al.
- 1994
(Show Context)
Citation Context ...(log 2 n) O(log n) O(log n) Connected [12] O(log n) �� O(log 3 n) �� O(log 3 n) Monotone [14] O(log n) �� O(log 2 n) �� O(log 2 n) Convex [39] O(log n + log N) O(log n log N) O(log n l=-=og N) Staircase [2] O(log n) ��-=-�� O(log n) �� O(log n) Table 1: Previous results for dynamic point location. N denotes the number of possible y-coordinates for edge endpoints in the subdivision. Also, we use �� O() to den... |

8 | Computational geometry--a survey - Lee, Preparata - 1984 |

6 |
Zerlegung einer planaren Unterteilung der Ebene und ihre Anwendungen
- Fries
- 1985
(Show Context)
Citation Context ...). The space for this data structure is O(n log n). One can improve the space of the above method to O(n) at the expense of making the query time an amortized bound, using the methods of Fries et al. =-=[20, 21]-=-. As we mentioned earlier, however, our interest is in performing updates in O(1) amortized time (O(k) time for chain insertion). In the next section we show how to modify our approach to achieve this... |

6 |
Dynamic Planar Point Location with Optimal Query Time
- Preparata, Tamassia
- 1990
(Show Context)
Citation Context ...eneral [3] O(log nlog log n) Ō(log nlog log n) Ō(log 2 n) Connected [11] O(log 2 n) O(log n) O(log n) Connected [12] O(log n) Ō(log 3 n) Ō(log 3 n) Monotone [14] O(log n) Ō(log 2 n) Ō(log 2 n) Convex =-=[39]-=- O(log n + log N) O(log nlog N) O(log nlog N) Staircase [2] O(log n) Ō(log n) Ō(log n) Preparata and Tamassia [38] have given techniques for maintaining monotone subdivisions that are also based on th... |

5 |
Sorting and Searching, Data Structures and Algorithms, volume 1
- Mehlhorn
- 1984
(Show Context)
Citation Context ...strategy deriveds614 MICHAEL T. GOODRICH AND ROBERTO TAMASSIA from the priority search tree data structure of McCreight [30]. They dynamize this approach with the BB(α) tree data structure (e.g., see =-=[32]-=-) using the approach of Willard and Lueker [43] to spread local updates over future operations and the method of Overmars [34] to perform global rebuilding (at the same time) before the “current” data... |

2 |
and intersection problems in plane geometry
- Visibility
- 1989
(Show Context)
Citation Context ... edge e, and the left and right subtrees of B are centroid trees for T 0 and T 00 , respectively. The centroid decomposition tree B has O(log n) height, and can be constructed in O(n) time (e.g., see =-=[10, 24]-=-). 2.3 Dynamic trees Dynamic trees [42] are a versatile dynamic data structure for maintaining a forest of rooted trees. We shall use an extension of dynamic trees, called edge-ordered dynamic trees [... |

2 | Location of a Point in a Planar Subdivision and its - Lee, Preparata - 1977 |