Computer Science > Data Structures and Algorithms
[Submitted on 18 Oct 2021 (v1), last revised 24 Jun 2023 (this version, v4)]
Title:Data structure for node connectivity and cut queries
View PDFAbstract: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$.
Submission history
From: Zeev Nutov [view email][v1] Mon, 18 Oct 2021 08:52:10 UTC (70 KB)
[v2] Wed, 5 Jan 2022 20:04:15 UTC (74 KB)
[v3] Thu, 18 Aug 2022 08:12:50 UTC (221 KB)
[v4] Sat, 24 Jun 2023 19:45:49 UTC (224 KB)
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Connected Papers (What is Connected Papers?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
alphaXiv (What is alphaXiv?)
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Hugging Face (What is Huggingface?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.