JavaScript Algorithms and Data Structures: Disjoint Set

Disjoint set is a data structure that keeps track of a set of elements partitioned into a number of disjoint (non-overlapping) subsets. Learn how to implement it in JavaScript!

Disjoint-set data structure (also called a union–find data structure or merge–find set) is a data structure that tracks a set of elements partitioned into a number of disjoint (non-overlapping) subsets. It provides near-constant-time operations (bounded by the inverse Ackermann function) to add new sets, to merge existing sets, and to determine whether elements are in the same set. In addition to many other uses (see the Applications section), disjoint-sets play a key role in Kruskal's algorithm for finding the minimum spanning tree of a graph.

disjoint set

MakeSet creates 8 singletons.

disjoint set

After some operations of Union, some sets are grouped together.

References

Read this in other languages: Русский, Português

The Original Article can be found on https://github.com

#javascript #algorithms #datastructures

 

JavaScript Algorithms and Data Structures: Disjoint Set
4.00 GEEK