A Simple Sweep Line Algorithm for Counting Triangulations and Pseudo-triangulations (1312.3188v1)
Abstract: Let $P\subset\mathbb{R}{2}$ be a set of $n$ points. In this paper we show two new algorithms, one to compute the number of triangulations of $P$, and one to compute the number of pseudo-triangulations of $P$. We show that our algorithms run in time $O{*}(t(P))$ and $O{*}(pt(P))$ respectively, where $t(P)$ and $pt(P)$ are the largest number of triangulation paths (T-paths) and pseudo-triangulations paths (PT-paths), respectively, that the algorithms encounter during their execution. Moreover, we show that $t(P) = O{*}(9{n})$, which is the first non-trivial bound on $t(P)$ to be known. While there already are algorithms that count triangulations in $O{*}\left(2n\right)$, and $O{*}\left(3.1414{n}\right)$, there are sets of points where the number of T-paths is $O(2{n})$. In such cases the algorithm herein presented could potentially be faster. Furthermore, it is not clear whether the already-known algorithms can be modified to count pseudo-triangulations so that their running times remain $O{*}(cn)$, for some small constant $c\in\mathbb{R}$. Therefore, for counting pseudo-triangulations (and possibly other similar structures) our approach seems better.