Skip to main content

Finding 2-Edge and 2-Vertex Strongly Connected Components in Quadratic Time

  • Conference paper
  • First Online:
Book cover Automata, Languages, and Programming (ICALP 2015)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9134))

Included in the following conference series:

Abstract

We present faster algorithms for computing the 2-edge and 2-vertex strongly connected components of a directed graph. While in undirected graphs the 2-edge and 2-vertex connected components can be found in linear time, in directed graphs with m edges and n vertices only rather simple O(m n)-time algorithms were known. We use a hierarchical sparsification technique to obtain algorithms that run in time \(O(n^2)\). For 2-edge strongly connected components our algorithm gives the first running time improvement in 20 years. Additionally we present an \(O(m^2 /\log n)\)-time algorithm for 2-edge strongly connected components, and thus improve over the O(m n) running time also when \(m = O(n)\). Our approach extends to k-edge and k-vertex strongly connected components for any constant k with a running time of \(O(n^2 \log n)\) for k-edge-connectivity and \(O(n^3)\) for k-vertex-connectivity.

Full version available at http://arxiv.org/abs/1412.6466

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bang-Jensen, J., Gutin, G.: Digraphs: Theory, algorithms and applications. Springer Monographs in Mathematics, 2nd edn. Springer, London (2009)

    Book  Google Scholar 

  2. Bondy, J.A., Murty, U.S.R.: Graph Theory with Applications. Macmillan, London (1976)

    MATH  Google Scholar 

  3. Buchsbaum, A.L., Georgiadis, L., Kaplan, H., Rogers, A., Tarjan, R.E., Westbrook, J.R.: Linear-time algorithms for dominators and other path-evaluation problems. SIAM J. Comput. 38(4), 1533–1573 (2008)

    Article  MATH  MathSciNet  Google Scholar 

  4. Chatterjee, K., Henzinger, M.: Efficient and Dynamic Algorithms for Alternating Büchi Games and Maximal End-component Decomposition. J. ACM 61(3), 15:1–15:40 (2014). Announced at SODA 2011 and SODA 2012

    Google Scholar 

  5. Chatterjee, K., Henzinger, M., Loitzenbauer, V.: Improved algorithms for one-pair and \(k\)-pair Streett objectives. In: LICS (2015, to appear)

    Google Scholar 

  6. Chatterjee, K., Jurdziński, M., Henzinger, T.A.: Simple stochastic parity games. In: Baaz, M., Makowsky, J.A. (eds.) CSL 2003. LNCS, vol. 2803, pp. 100–113. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  7. Even, S.: An Algorithm for Determining Whether the Connectivity of a Graph is at Least \(k\). SIAM J. Comput. 4(3), 393–396 (1975)

    Article  MATH  MathSciNet  Google Scholar 

  8. Gabow, H.N.: A matroid approach to finding edge connectivity and packing arborescences. J. Comput. Syst. Sci. 50(2), 259–273 (1995). Announced at STOC 1991

    Article  MATH  MathSciNet  Google Scholar 

  9. Gabow, H.N.: Using expander graphs to find vertex connectivity. J. ACM 53(5), 800–844 (2006). Announced at FOCS 2000

    Article  MathSciNet  Google Scholar 

  10. Gabow, H.N., Tarjan, R.E.: A linear-time algorithm for a special case of disjoint set union. In: STOC, pp. 246–251 (1983)

    Google Scholar 

  11. Galil, Z.: Finding the vertex connectivity of graphs. SIAM J. Comput. 9(1), 197–199 (1980)

    Article  MATH  MathSciNet  Google Scholar 

  12. Galil, Z., Italiano, G.F.: Reducing edge connectivity to vertex connectivity. ACM SIGACT News 22(1), 57–61 (1991)

    Article  MathSciNet  Google Scholar 

  13. Georgiadis, L.: Testing 2-vertex connectivity and computing pairs of vertex-disjoint s-t paths in digraphs. In: Abramsky, S., Gavoille, C., Kirchner, C., Meyer auf der Heide, F., Spirakis, P.G. (eds.) ICALP 2010. LNCS, vol. 6198, pp. 738–749. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  14. Georgiadis, L., Italiano, G.F., Laura, L., Parotsidis, N.: 2-Edge connectivity in directed graphs. In: SODA, pp. 1988–2005 (2015)

    Google Scholar 

  15. Georgiadis, L., Italiano, G.F., Laura, L., Parotsidis, N.: 2-Vertex connectivity in directed graphs. In: ICALP (2015). arXiv: 1409.6277 (to appear)

  16. Georgiadis, L., Tarjan, R.E.: Finding dominators revisited. In: SODA, pp. 862–871 (2004)

    Google Scholar 

  17. Henzinger, M., King, V., Warnow, T.: Constructing a Tree from Homeomorphic Subtrees, with Applications to Computational Evolutionary Biology. Algorithmica 24(1), 1–13 (1999). Announced at SODA 1996

    Article  MATH  MathSciNet  Google Scholar 

  18. Henzinger, M.R., Rao, S., Gabow, H.N.: Computing Vertex Connectivity: New Bounds from Old Techniques. Journal of Algorithms 34(2), 222–250 (2000). Announced at FOCS 1996

    Article  MATH  MathSciNet  Google Scholar 

  19. Hopcroft, J.E., Tarjan, R.E.: Dividing a graph into triconnected components. SIAM J. Comput. 2(3), 135–158 (1973)

    Article  MathSciNet  Google Scholar 

  20. Italiano, G.F., Laura, L., Santaroni, F.: Finding strong bridges and strong articulation points in linear time. Theor. Comput. Sci. 447, 74–84 (2012)

    Article  MATH  MathSciNet  Google Scholar 

  21. Jaberi, R.: On computing the 2-vertex-connected components of directed graphs, January 2014. http://arxiv.org/abs/1401.6000v1

  22. Makino, S.: An algorithm for finding all the \(k\)-components of a digraph. International Journal of Computer Mathematics 24(3–4), 213–221 (1988)

    Article  MATH  Google Scholar 

  23. Nagamochi, H., Ibaraki, T.: A linear-time algorithm for finding a sparse \(k\)-connected spanning subgraph of a \(k\)-connected graph. Algorithmica, 583–596 (1992)

    Google Scholar 

  24. Nagamochi, H., Ibaraki, T.: Algorithmic aspects of graph connectivity. Cambridge University Press, New York (2008)

    Book  MATH  Google Scholar 

  25. Nagamochi, H., Watanabe, T.: Computing \(k\)-edge-connected components of a multigraph. IEICE TRANSACTIONS on Fundamentals of Electronics, Communications and Computer Sciences E76–A(4), 513–517 (1993)

    Google Scholar 

  26. Newman, M.E.J.: Networks: An Introduction. Oxford University Press (2010)

    Google Scholar 

  27. Tarjan, R.E.: Depth-first search and linear graph algorithms. SIAM J. Comput. 1(2), 146–160 (1972)

    Article  MATH  MathSciNet  Google Scholar 

  28. Tarjan, R.E.: Edge-disjoint spanning trees and depth-first search. Acta Inf. 6(2), 171–185 (1976)

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Veronika Loitzenbauer .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Henzinger, M., Krinninger, S., Loitzenbauer, V. (2015). Finding 2-Edge and 2-Vertex Strongly Connected Components in Quadratic Time. In: Halldórsson, M., Iwama, K., Kobayashi, N., Speckmann, B. (eds) Automata, Languages, and Programming. ICALP 2015. Lecture Notes in Computer Science(), vol 9134. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-47672-7_58

Download citation

  • DOI: https://doi.org/10.1007/978-3-662-47672-7_58

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-662-47671-0

  • Online ISBN: 978-3-662-47672-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics