Maintaining bridge-connected and biconnected components on-line Authors Jeffery Westbrook Department of Computer Science Yale University Robert E. Tarjan Department of Computer Science Princeton University NEC Research Institute Article

Received: 01 September 1989 Revised: 08 June 1990 DOI :
10.1007/BF01758773

Cite this article as: Westbrook, J. & Tarjan, R.E. Algorithmica (1992) 7: 433. doi:10.1007/BF01758773
Abstract We consider the twin problems of maintaining the bridge-connected components and the biconnected components of a dynamic undirected graph. The allowed changes to the graph are vertex and edge insertions. We give an algorithm for each problem. With simple data structures, each algorithm runs inO (n logn +m ) time, wheren is the number of vertices andm is the number of operations. We develop a modified version of the dynamic trees of Sleator and Tarjan that is suitable for efficient recursive algorithms, and use it to reduce the running time of the algorithms for both problems toO (m α(m ,n )), where α is a functional inverse of Ackermann's function. This time bound is optimal. All of the algorithms useO (n ) space.

Key words On-line algorithms Graph algorithms Graph connectivity Dynamic trees Data structures Research at Princeton University supported in part by National Science Foundation Grant DCR-86-05962 and Office of Naval Research Contract N00014-91-J-1463.

This work was partially done while the author was at the Department of Computer Science, Princeton University, Princeton, NJ 08544, USA.

Communicated by Greg N. Frederickson.

References [1]

B. Awerbuch and Y. Shiloach. New connectivity and msf algorithms for shuffle-exchange network and PRAM.

IEEE Trans. Comput. ,

36 :1258–1263, 1987.

MATH CrossRef MathSciNet [2]

G. D. Battista and R. Tamassia. Incremental planarity testing.Proc. 30th IEEE Symposium on Foundations of Computer Science , pages 436–441, 1989.

[3]

G. D. Battista and R. Tamassia. On-line graph algorithms with spqr-trees.Proc. 17th Internat. Conf. on Automata, Languages, and Programming (ICALP 1990) . Lecture Notes in Computer Science, vol. 443, pages 598–611. Springer-Verlag, Berlin, 1990.

[4]

N. Blum. On the single-operation worst-case time complexity of the disjoint set union problem.

SIAM J. Comput. , 15:1021–1024, 1986.

MATH CrossRef MathSciNet [5]

G. A. Cheston. Incremental Algorithms in Graph Theory. Ph.D. thesis, Dept. of Computer Science, University of Toronto, 1976. Technical Report No. 91.

[6]

S. Even and Y. Shiloach. An on-line edge deletion problem.

J. Assoc. Comput. Mach. ,

28 :1–4, 1981.

MATH MathSciNet [7]

G. N. Frederickson. Data structures for on-line updating of minimum spanning trees, with applications.

SIAM J. Comput. ,

14 :781–798, 1985.

MATH CrossRef MathSciNet [8]

M. L. Fredman and M. E. Saks. The cell probe complexity of dynamic data structures.Proc. 21st ACM Symposium on Theory of Computing , pages 345–354, Seattle, WA, May 1989.

[9]

J. Hopcroft and R. E. Tarjan. Algorithm 447: Efficient algorithms for graph manipulation.

Comm. ACM ,

16 :372–378, 1973.

CrossRef [10]

R. Karp and V. Ramachandran. Parallel Algorithms for Shared Memory Machines.Handbook of Theoretical Computer Science , Elsevier, Amsterdam, 1990, pages 869–942.

[11]

J. A. La Poutré. Lower bounds for the union-find and split-find problem on pointer machines.Proc. 22nd ACM Symposium on Theory of Computing , pages 34–44, 1990.

[12]

J. A. La Poutré, J. van Leeuwen, and M. H. Overmars. Maintenance of 2- and 3-Connected Components of Graphs, Part I: 2- and 3-Edge-Connected Components. Technical Report RUU-CS-90-26, Utrecht University, 1990.

[13]

J. H. Reif. A topological approach to dynamic graph connectivity.

Inform. Process. Lett. ,

25 :65–70, 1987.

MATH CrossRef MathSciNet [14]

D. D. Sleator and R. E. Tarjan. A data structure for dynamic trees.

J. Comput. System Sci. ,

26 :362–391, 1983.

MATH CrossRef MathSciNet [15]

D. D. Sleator and R. E. Tarjan. Self-adjusting binary search trees.

J. Assoc. Comput. Mach. ,

32 :652–686, 1985.

MATH MathSciNet [16]

R. Tamassia. A dynamic data structure for planar graph embedding.Proc. 15th Internat. Conf. on Automata, Languages, and Programming (ICALP1988) . Lecture Notes in Computer Science, vol. 317, pages 576–590. Springer-Verlag, Berlin, 1988.

[17]

R. Tamassia. Dynamic Data Structures for Two-Dimensional Searching. Ph.D. thesis, Coordinated Science Laboratory, University of Illinois at Urbana-Champagne, 1988. Technical Report ACT-100.

[18]

R. E. Tarjan. Depth first search and linear graph algorithms.

SIAM J. Comput. ,

1 :146–160, 1972.

MATH CrossRef MathSciNet [19]

R. E. Tarjan. Efficiency of a good but not linear set union algorithm.

J. Assoc. Comput. Mach. ,

22 :215–225, 1975.

MATH MathSciNet [20]

R. E. Tarjan. A class of algorithms which require nonlinear time to maintain disjoint sets.

J. Comput. System Sci. ,

18 :110–127, 1979.

MATH CrossRef MathSciNet [21]

R. E. Tarjan.Data Structures and Network Algorithms. Society for Industrial and Applied Mathematics, Philadelphia, PA, 1983.

[22]

R. E. Tarjan. Amortized computational complexity.

SIAM J. Algebraic Discrete Methods ,

6 :306–318, 1985.

MATH CrossRef MathSciNet [23]

R. E. Tarjan and J. van Leeuwen. Worst-case analysis of set union algorithms.

J. Assoc. Comput. Mach. ,

31 :245–281, 1984.

MATH MathSciNet [24]

R. E. Tarjan and U. Vishkin. An efficient parallel biconnectivity algorithm.

SIAM J. Comput. ,

14 :862–874, 1985.

MATH CrossRef MathSciNet [25]

J. Westbrook and R. E. Tarjan. Maintaining Bridge-Connected and Biconnected Components On-Line. Technical Report CS-TR-228-89, Dept. of Computer Science, Princeton University, Princeton, NJ, 1989.

[26]

A. C. Yao. Should tables be sorted?

J. Assoc. Comput. Mach. ,

28 :615–628, 1981.

MATH MathSciNet © Springer-Verlag New York Inc. 1992