  We study the amortized number of combinatorial changes (edge insertions and
removals) needed to update the graph structure of the Voronoi diagram
$\mathcal{V}(S)$ (and several variants thereof) of a set $S$ of $n$ sites in
the plane as sites are added.
  We define a general update operation for planar graphs modeling the
incremental construction of several variants of Voronoi diagrams as well as the
incremental construction of an intersection of halfspaces in $\mathbb{R}^3$. We
show that the amortized number of edge insertions and removals needed to add a
new site is $O(\sqrt{n})$. A matching $\Omega(\sqrt{n})$ combinatorial lower
bound is shown, even in the case where the graph of the diagram is a tree. This
contrasts with the $O(\log{n})$ upper bound of Aronov et al. (2006) for
farthest-point Voronoi diagrams when the points are inserted in order along
their convex hull.
  We present a semi-dynamic data structure that maintains the Voronoi diagram
of a set $S$ of $n$ sites in convex position. This structure supports the
insertion of a new site $p$ and finds the asymptotically minimal number $K$ of
edge insertions and removals needed to obtain the diagram of $S \cup \{p\}$
from the diagram of $S$, in time $O(K\,\mathrm{polylog}\ n)$ worst case, which
is $O(\sqrt{n}\;\mathrm{polylog}\ n)$ amortized by the aforementioned result.
  The most distinctive feature of this data structure is that the graph of the
Voronoi diagram is maintained at all times and can be traversed in the natural
way; this contrasts with other known data structures supporting nearest
neighbor queries. Our data structure supports general search operations on the
current Voronoi diagram, which can, for example, be used to perform point
location queries in the cells of the current Voronoi diagram in $O(\log n)$
time, or to determine whether two given sites are neighbors in the Delaunay
triangulation.
