English

A Simple Convex Layers Algorithm

Computational Geometry 2017-03-17 v2 Data Structures and Algorithms

Abstract

Given a set of nn points PP in the plane, the first layer L1L_1 of PP is formed by the points that appear on PP's convex hull. In general, a point belongs to layer LiL_i, if it lies on the convex hull of the set Pj<i{Lj}P \setminus \bigcup_{j<i}\{L_j\}. The \emph{convex layers problem} is to compute the convex layers LiL_i. Existing algorithms for this problem either do not achieve the optimal O(nlogn)\mathcal{O}\left(n\log n\right) runtime and linear space, or are overly complex and difficult to apply in practice. We propose a new algorithm that is both optimal and simple. The simplicity is achieved by independently computing four sets of monotone convex chains in O(nlogn)\mathcal{O}\left(n\log n\right) time and linear space. These are then merged in O(nlogn)\mathcal{O}\left(n\log n\right) time.

Keywords

Cite

@article{arxiv.1702.06829,
  title  = {A Simple Convex Layers Algorithm},
  author = {Raimi A. Rufai and Dana S. Richards},
  journal= {arXiv preprint arXiv:1702.06829},
  year   = {2017}
}

Comments

12 pages, 6 figures