Efficiency of a Good But Not Linear Set Union Algorithm

  title={Efficiency of a Good But Not Linear Set Union Algorithm},
  author={Robert Endre Tarjan},
  journal={J. ACM},
  • R. Tarjan
  • Published 1 November 1972
  • Mathematics
  • J. ACM
TWO types of instructmns for mampulating a family of disjoint sets which partitmn a umverse of n elements are considered FIND(x) computes the name of the (unique) set containing element x UNION(A, B, C) combines sets A and B into a new set named C. A known algorithm for implementing sequences of these mstructmns is examined It is shown that, if t(m, n) as the maximum time reqmred by a sequence of m > n FINDs and n -- 1 intermixed UNIONs, then kima(m, n) _~ t(m, n) < k:ma(m, n) for some positive… 

Figures from this paper

Some Observations on Equivalence Handling Methods

It is shown that certain modifications to the UNION operation that are convenient in some applications do not affect the running time complexity, and that under appropriate input restrictions, UNION and FIND can be made to run in linear time.

Experiments on Union-Find Algorithms for the Disjoint-Set Data Structure

An extensive experimental study comparing the time required to execute 55 variations of Union-Find algorithms shows that a somewhat forgotten simple algorithm developed by Rem in 1976 is the fastest, in spite of the fact that its worst-case time complexity is inferior to that of the commonly accepted “best” algorithms.

A linear-time algorithm for a special case of disjoint set union

A linear-time algorithm for the special case of the disjoint set union problem in which the structure of the unions (defined by a “union tree”) is known in advance, which gives similar improvements in the efficiency of algorithms for solving a number of other problems.

Lower Bounds for Selection in X + Y and Other Multisets

A lower bound of f~(max(n, K 1/2 log K) is given for selecting the Kth element in X + X, and thus in X and Y, for K selecting the first through the median element Selection of gaps, that is, consecutive differences in a sorted order, is shown to be f ~(n log n) for all K.

A simple and efficient Union-Find-Delete algorithm

On the average behavior of set merging algorithms (Extended Abstract)

  • A. Yao
  • Computer Science, Mathematics
    STOC '76
  • 1976
The expected running time of a variety of algorithms that perform set merging is studied to determine the average behavior for several of the set merging algorithms commonly known.

Union-Find with Constant Time Deletions

A relatively simple modification of the classical union-find data structure that supports delete, as well as makeset and union operations, in constant worst-case time, while still supporting find operations in O(log n) worst- case time and O(α⌈ M/N⌉ (n)) amortized time is presented.

Linear Expected Time of a Simple Union-Find Algorithm

Compressing Trees with a Sledgehammer

This thesis provides a unified framework for the analysis of the compressed tree method and a meta-theorem that proves an inverse-Ackermann-type bound for a class of algorithms.

Building the Component Tree in Quasi-Linear Time

A simple to implement quasi-linear algorithm for computing the component tree on symmetric graphs, based on Tarjan's union-find procedure is proposed and an algorithm that computes the n most significant lobes of a map is proposed.



Set Merging Algorithms

This paper considers the problem of merging sets formed from a total of n items in such a way that at any time, the name of a set containing a given item can be ascertained. Two algorithms using

On finding lowest common ancestors in trees

The first on line algorithm is applied to a problem in code optimization, that of computing immediate dominators in a reducible flow graph and it is shown how this computation can be performed in O(n log n) steps.

Efficiency of Equivalence Algorithms

  • M. Fischer
  • Mathematics
    Complexity of Computer Computations
  • 1972
The equivalence problem is to determine the finest partition on a set that is consistent with a sequence of assertions of the form “x ≡ y”. A strategy for doing this on a computer processes the

Finding Dominators in Directed Graphs

  • R. Tarjan
  • Computer Science, Mathematics
    SIAM J. Comput.
  • 1974
This paper describes an algorithm for finding dominators in an arbitrary directed graph. The algorithm uses depth-first search and efficient algorithms for computing disjoint set unions and

An improved equivalence algorithm

An algorithm for assigning storage on the basis of EQUIVALENCE, DIMENSION and COMMON declarations is presented, and has reduced computation time by 40 percent over a previously published algorithm.

Testing flow graph reducibility

An algorithm for testing whether a flow graph is reducible is described, which uses depth-first search to reveal the structure of the flow graph and a good method for computing disjoint set unions to determine reducibility from the search information.

Computing minimum spanning trees efficiently

Modifications to both Prim's and Kruskal's Algorithms are introduced which give significant improvements for the complete range of sparseness, and a dramatic reduction in execution time can be obtained for sparse networks when the network under consideration is sparse.

An algorithm for equivalence declarations

Many algebraic translators provide the programmer with a limited ability to allocate storage, but there are situations in which one wishes to make certain vectors and arrays contiguous, coincident, or overlapping.

Selected combinatorial research problems.

Thirty-seven research problems are described, covering a wide range of combinatorial topics. Unlike Hilbert''s problems, most of these are not especially famous and they might be "do-able" in the

The Art of Computer Programming, Volume I: Fundamental Algorithms, 2nd Edition

A container closure assembly for maintaining a sterile sealed container is provided having a ferrule having a top annular portion and a depending skirt portion for securing a resilient stopper for