87,187 research outputs found

    I/O-efficient map overlay and point location in low-density subdivisions

    Get PDF
    We present improved and simplified i/o-efficient algorithms for two problems on planar low-density subdivisions, namely map overlay and point location. More precisely, we show how to preprocess a lowdensity subdivision with n edges in O(sort(n)) i/o’s into a compressed linear quadtree such that one can: (i) compute the overlay of two such preprocessed subdivisions in O(scan(n)) i/o’s, where n is the total number of edges in the two subdivisions, (ii) answer a single point location query in O(logB n) i/o’s and k batched point location queries in O(scan(n) + sort(k)) i/o’s. For the special case where the subdivision is a fat triangulation, we show how to obtain the same bounds with an ordinary (uncompressed) quadtree, and we show how to make the structure fully dynamic using O(logB n) i/o’s per update. Our algorithms and data structures improve on the previous best known bounds for general subdivisions both in the number of i/o’s and storage usage, they are significantly simpler, and several of our algorithms are cache-oblivious

    I/O-efficient map overlay and point location in low-density subdivisions

    Get PDF
    We present improved and simplified i/o-efficient algorithms for two problems on planar low-density subdivisions, namely map overlay and point location. More precisely, we show how to preprocess a lowdensity subdivision with n edges in O(sort(n)) i/o’s into a compressed linear quadtree such that one can: (i) compute the overlay of two such preprocessed subdivisions in O(scan(n)) i/o’s, where n is the total number of edges in the two subdivisions, (ii) answer a single point location query in O(logB n) i/o’s and k batched point location queries in O(scan(n) + sort(k)) i/o’s. For the special case where the subdivision is a fat triangulation, we show how to obtain the same bounds with an ordinary (uncompressed) quadtree, and we show how to make the structure fully dynamic using O(logB n) i/o’s per update. Our algorithms and data structures improve on the previous best known bounds for general subdivisions both in the number of i/o’s and storage usage, they are significantly simpler, and several of our algorithms are cache-oblivious

    Exact Distance Oracles for Planar Graphs with Failing Vertices

    Full text link
    We consider exact distance oracles for directed weighted planar graphs in the presence of failing vertices. Given a source vertex uu, a target vertex vv and a set XX of kk failed vertices, such an oracle returns the length of a shortest uu-to-vv path that avoids all vertices in XX. We propose oracles that can handle any number kk of failures. More specifically, for a directed weighted planar graph with nn vertices, any constant kk, and for any q∈[1,n]q \in [1,\sqrt n], we propose an oracle of size O~(nk+3/2q2k+1)\tilde{\mathcal{O}}(\frac{n^{k+3/2}}{q^{2k+1}}) that answers queries in O~(q)\tilde{\mathcal{O}}(q) time. In particular, we show an O~(n)\tilde{\mathcal{O}}(n)-size, O~(n)\tilde{\mathcal{O}}(\sqrt{n})-query-time oracle for any constant kk. This matches, up to polylogarithmic factors, the fastest failure-free distance oracles with nearly linear space. For single vertex failures (k=1k=1), our O~(n5/2q3)\tilde{\mathcal{O}}(\frac{n^{5/2}}{q^3})-size, O~(q)\tilde{\mathcal{O}}(q)-query-time oracle improves over the previously best known tradeoff of Baswana et al. [SODA 2012] by polynomial factors for q=Ω(nt)q = \Omega(n^t), t∈(1/4,1/2]t \in (1/4,1/2]. For multiple failures, no planarity exploiting results were previously known

    A Static Optimality Transformation with Applications to Planar Point Location

    Full text link
    Over the last decade, there have been several data structures that, given a planar subdivision and a probability distribution over the plane, provide a way for answering point location queries that is fine-tuned for the distribution. All these methods suffer from the requirement that the query distribution must be known in advance. We present a new data structure for point location queries in planar triangulations. Our structure is asymptotically as fast as the optimal structures, but it requires no prior information about the queries. This is a 2D analogue of the jump from Knuth's optimum binary search trees (discovered in 1971) to the splay trees of Sleator and Tarjan in 1985. While the former need to know the query distribution, the latter are statically optimal. This means that we can adapt to the query sequence and achieve the same asymptotic performance as an optimum static structure, without needing any additional information.Comment: 13 pages, 1 figure, a preliminary version appeared at SoCG 201

    Linear-Space Approximate Distance Oracles for Planar, Bounded-Genus, and Minor-Free Graphs

    Full text link
    A (1 + eps)-approximate distance oracle for a graph is a data structure that supports approximate point-to-point shortest-path-distance queries. The most relevant measures for a distance-oracle construction are: space, query time, and preprocessing time. There are strong distance-oracle constructions known for planar graphs (Thorup, JACM'04) and, subsequently, minor-excluded graphs (Abraham and Gavoille, PODC'06). However, these require Omega(eps^{-1} n lg n) space for n-node graphs. We argue that a very low space requirement is essential. Since modern computer architectures involve hierarchical memory (caches, primary memory, secondary memory), a high memory requirement in effect may greatly increase the actual running time. Moreover, we would like data structures that can be deployed on small mobile devices, such as handhelds, which have relatively small primary memory. In this paper, for planar graphs, bounded-genus graphs, and minor-excluded graphs we give distance-oracle constructions that require only O(n) space. The big O hides only a fixed constant, independent of \epsilon and independent of genus or size of an excluded minor. The preprocessing times for our distance oracle are also faster than those for the previously known constructions. For planar graphs, the preprocessing time is O(n lg^2 n). However, our constructions have slower query times. For planar graphs, the query time is O(eps^{-2} lg^2 n). For our linear-space results, we can in fact ensure, for any delta > 0, that the space required is only 1 + delta times the space required just to represent the graph itself
    • …
    corecore