Dynamic Bridge-Finding in O( 2 n) Amortized Time

Abstract

We present a deterministic fully-dynamic data structure for maintaining information about the bridges in a graph. We support updates in O(( n)2) amortized time, and can find a bridge in the component of any given vertex, or a bridge separating any two given vertices, in O( n / n) worst case time. Our bounds match the current best for bounds for deterministic fully-dynamic connectivity up to n factors. The previous best dynamic bridge finding was an O(( n)3) amortized time algorithm by Thorup [STOC2000], which was a bittrick-based improvement on the O(( n)4) amortized time algorithm by Holm et al.[STOC98, JACM2001]. Our approach is based on a different and purely combinatorial improvement of the algorithm of Holm et al., which by itself gives a new combinatorial O(( n)3) amortized time algorithm. Combining it with Thorup's bittrick, we get down to the claimed O(( n)2) amortized time. Essentially the same new trick can be applied to the biconnectivity data structure from [STOC98, JACM2001], improving the amortized update time to O(( n)3). We also offer improvements in space. We describe a general trick which applies to both of our new algorithms, and to the old ones, to get down to linear space, where the previous best use O(m + n n n). Finally, we show how to obtain O( n/ n) query time, matching the optimal trade-off between update and query time. Our result yields an improved running time for deciding whether a unique perfect matching exists in a static graph.

0

Turn this paper into a lesson

ArcXiv compiles a structured reading guide from this paper's metadata: plain-English importance, contributions, prerequisite concepts, which sections to read first, flashcards, and a quiz. Grounded in the abstract, never invented.

Discussion (0)

Sign in to join the discussion.

Loading comments…