Abstract
We consider a version of the classic disjoint set union (union-find) problem in which there are two partitions of the elements, rather than just one, but restricted such that one partition is a refinement of the other. We call this the nested set union problem. This problem occurs in a new algorithm to find dominators in a flow graph. One can solve the problem by using two instances of a data structure for the classical problem, but it is natural to ask whether these instances can be combined. We show that the answer is yes: the nested problem can be solved by extending the classic solution to support two nested partitions, at the cost of at most a few bits of storage per element and a small constant overhead in running time. Our solution extends to handle any constant number of nested partitions.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Ackermann, W.: Zum hilbertschen aufbau der reellen zahlen. Mathematische Annalen 99(1), 118–133 (1928)
Dijkstra, E.W.: A Discipline of Programming. Prentice-Hall (1976)
Farrow, R.: Efficient on-line evaluation of functions defined on paths in trees. Technical Report 476-093-17, Rice University (1977)
Fraczak, L., Georgiadis, W., Miller, A., Tarjan, R.E.: Finding dominators via disjoint set union. J. Discrete Algorithms 23, 2–20 (2013)
Fredman, M.L., Saks, M.E.: The cell probe complexity of dynamic data structures. In: Proc. 21st Annual ACM Symposium on Theory of Computing, pp. 345–354 (1989)
Galler, B.A., Fisher, M.J.: An improved equivalence algorithm. Commun. ACM 7(5), 301–303 (1964)
Goel, A., Khanna, S., Larkin, D.H., Tarjan, R.E.: Disjoint set union with randomized linking. In: Proc. 25th Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 1005–1017 (2014)
Knuth, D.E.: The Art of Computer Programming, 3rd edn. Fundamental Algorithms, vol. 1. Addison-Wesley (1997)
Larkin, D.H., Tarjan, R.E.: Nested set union. CoRR (2014)
Péter, R.: Rekursive funktionen. Académiai Kiadó (1951)
Tarjan, R.E.: Applications of path compression on balanced trees. J. ACM 26(4), 690–715 (1979)
Tarjan, R.E., van Leeuwen, J.: Worst-case analysis of set union algorithms. J. ACM 31(2), 245–281 (1984)
van der Wiede, T.P.: Datastructures: An Axiomatic Approach and the Use of Binomial Trees in Developing and Analyzing Algorithms. Mathematisch Centrum (1980)
van Leeuwen, J., van der Wiede, T.P.: Alternative path compression techniques. Technical Report RUU-CS-77-3, Rijksuniversiteit Utrecht (1977)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Larkin, D.H., Tarjan, R.E. (2014). Nested Set Union. In: Schulz, A.S., Wagner, D. (eds) Algorithms - ESA 2014. ESA 2014. Lecture Notes in Computer Science, vol 8737. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-44777-2_51
Download citation
DOI: https://doi.org/10.1007/978-3-662-44777-2_51
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-662-44776-5
Online ISBN: 978-3-662-44777-2
eBook Packages: Computer ScienceComputer Science (R0)