Computer Science > Data Structures and Algorithms
[Submitted on 25 Nov 2010 (v1), last revised 10 Nov 2011 (this version, v4)]
Title:Exact Distance Oracles for Planar Graphs
View PDFAbstract:We present new and improved data structures that answer exact node-to-node distance queries in planar graphs. Such data structures are also known as distance oracles. For any directed planar graph on n nodes with non-negative lengths we obtain the following:
* Given a desired space allocation $S\in[n\lg\lg n,n^2]$, we show how to construct in $\tilde O(S)$ time a data structure of size $O(S)$ that answers distance queries in $\tilde O(n/\sqrt S)$ time per query.
As a consequence, we obtain an improvement over the fastest algorithm for k-many distances in planar graphs whenever $k\in[\sqrt n,n)$.
* We provide a linear-space exact distance oracle for planar graphs with query time $O(n^{1/2+eps})$ for any constant eps>0. This is the first such data structure with provable sublinear query time.
* For edge lengths at least one, we provide an exact distance oracle of space $\tilde O(n)$ such that for any pair of nodes at distance D the query time is $\tilde O(min {D,\sqrt n})$. Comparable query performance had been observed experimentally but has never been explained theoretically.
Our data structures are based on the following new tool: given a non-self-crossing cycle C with $c = O(\sqrt n)$ nodes, we can preprocess G in $\tilde O(n)$ time to produce a data structure of size $O(n \lg\lg c)$ that can answer the following queries in $\tilde O(c)$ time: for a query node u, output the distance from u to all the nodes of C. This data structure builds on and extends a related data structure of Klein (SODA'05), which reports distances to the boundary of a face, rather than a cycle.
The best distance oracles for planar graphs until the current work are due to Cabello (SODA'06), Djidjev (WG'96), and Fakcharoenphol and Rao (FOCS'01). For $\sigma\in(1,4/3)$ and space $S=n^\sigma$, we essentially improve the query time from $n^2/S$ to $\sqrt{n^2/S}$.
Submission history
From: Christian Sommer [view email][v1] Thu, 25 Nov 2010 03:30:26 UTC (9 KB)
[v2] Wed, 15 Dec 2010 04:08:08 UTC (12 KB)
[v3] Mon, 11 Apr 2011 15:50:24 UTC (44 KB)
[v4] Thu, 10 Nov 2011 16:28:35 UTC (54 KB)
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Connected Papers (What is Connected Papers?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
alphaXiv (What is alphaXiv?)
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Hugging Face (What is Huggingface?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.