Handouts: Handout on Voronoi diagrams (on web),
powerpoint slides (Voronoi)
3/30/09: Complete Higher Dimensional Convex Hulls; Introduction to Voronoi diagrams and Delaunay diagrams
Finding convex hulls in 3D:
Given n points in 3D, the convex hull
can be computed in O(n log n) time, using a divide-and-conquer
algorithm. The main effort is spent in
doing the merge in O(n) time by "wrapping" two disjoint convex hulls
to find the convex hull of their union. I argued how this work can be
charged off to vertices of the convex hulls that lie interior
to the convex hull of the union.
This algorithm is worst-case optimal, since, just as in 2D, there
is an Omega(n log n) lower bound for computing the hull of n points.
I also discussed briefly the method of "gift wrapping"
as it applies to convex hulls in 3D: The running time is O(nh),
just as it is in the plane. Here, h is the number of vertices of
the convex hull (which is, within constant factors, the same as
the number of edges and facets).
A simple incremental algorithm finds the convex
hull in O(n^2) time. I mentioned that a randomized incremental
algorithm can be shown to have expected running time O(n log n).
I stated that the time it takes to compute a hull in d dimensions
for d>=4 is O(n^{floor(d/2)}), which is the worst-case complexity
of the output size (ie., the hull may have that many edges and faces).
Please read in the text (O'Rourke) the discussion of the hazards of
floating point arithmetic and how roundoff can lead to drastically
wrong outputs.
Introduction to Voronoi diagrams and their applications.