Let $\kappa(s,t)$ denote the maximum number of internally disjoint $st$-paths in an undirected graph $G$. We consider designing a compact data structure that answers $k$-bounded node connectivity queries: given $s,t \in V$ return $\min\{\kappa(s,t),k+1\}$. A trivial data structure has space $O(n^2)$ and query time $O(1)$. A data structure of Hsu and Lu has space $O(k^2n)$ and query time $O(\log k)$,and a randomized data structure of Iszak and Nutov has space $O(kn\log n)$ and query time $O(k \log n)$. We extend the Hsu-Lu data structure to answer queries in time $O(1)$. In parallel to our work, Pettie, Saranurak and Yin extended the Iszak-Nutov data structure to answer queries in time $O(\log n)$. Our data structure is more compact for $k<\log n$, and our query time is always better. We then augment our data structure by a list of cuts that enables to return a pointer to a minimum $st$-cut in the list (or to a cut of size $\leq k$) whenever $\kappa(s,t) \leq k$. A trivial data structure has cut list size $n(n-1)/2$, and cut query time $O(1)$, while the Pettie, Saranurak and Yin data structure has list size $O(kn \log n)$ and cut query time $O(\log n)$. We show that $O(kn)$ cuts suffice to return an $st$-cut of size $\leq k$, and a list of $O(k^2 n)$ cuts contains a minimum $st$-cut for every $s,t \in V$. In the case when $S$ is a node subset with $\kappa(s,t) \geq k$ for all $s,t \in V$, we show that $3|S|$ cuts suffice, and that these cuts can be partitioned into $O(k)$ laminar families. Thus using space $O(kn)$ we can answers each connectivity and cut queries for $s,t \in S$ in $O(1)$ time, generalizing and substantially simplifying the proof of a result of Pettie and Yin for the case $|S|=V$.
翻译:暂无翻译