A faster algorithm for computing motorcycle graphs
Antoine Vigneron, Lie Yan · 2013
We present a new algorithm for computing motorcycle graphs that runs in O(n4/3+ε) time for any ε>0, improving on all previously known algorithms. The main application of this result is to computing the straight skeleton of a polygon. It allows us to compute the straight skeleton of a non-degenerate polygon with h holes in O(n √(h+1) log2 n + n4/3+ε) expected time. If all input coordinates are O(log n)-bit rational numbers, we can compute the straight skeleton of a (possibly degenerate) polygon with h holes in expected time O(n √{h+1}log3 n). In particular, it means that we can compute the straight skeleton of a simple polygon in O(n log3n) expected time if all input coordinates are O(log n)-bit rationals, while all previously known algorithms have worst-case running time ω(n3/2).