English

A Divide-and-Conquer Algorithm for Two-Point $L_1$ Shortest Path Queries in Polygonal Domains

Computational Geometry 2019-03-05 v1 Data Structures and Algorithms

Abstract

Let P\mathcal{P} be a polygonal domain of hh holes and nn vertices. We study the problem of constructing a data structure that can compute a shortest path between ss and tt in P\mathcal{P} under the L1L_1 metric for any two query points ss and tt. To do so, a standard approach is to first find a set of nsn_s "gateways" for ss and a set of ntn_t "gateways" for tt such that there exist a shortest ss-tt path containing a gateway of ss and a gateway of tt, and then compute a shortest ss-tt path using these gateways. Previous algorithms all take quadratic O(nsnt)O(n_s\cdot n_t) time to solve this problem. In this paper, we propose a divide-and-conquer technique that solves the problem in O(ns+ntlogns)O(n_s + n_t \log n_s) time. As a consequence, we construct a data structure of O(n+(h2log3h/loglogh))O(n+(h^2\log^3 h/\log\log h)) size in O(n+(h2log4h/loglogh))O(n+(h^2\log^4 h/\log\log h)) time such that each query can be answered in O(logn)O(\log n) time.

Keywords

Cite

@article{arxiv.1903.01417,
  title  = {A Divide-and-Conquer Algorithm for Two-Point $L_1$ Shortest Path Queries in Polygonal Domains},
  author = {Haitao Wang},
  journal= {arXiv preprint arXiv:1903.01417},
  year   = {2019}
}

Comments

A preliminary version to appear in SoCG 2019

R2 v1 2026-06-23T07:57:52.258Z