module Union_find:Disjoint-sets.sig
..end
All of the operations are effectively (amortized) constant time.
type 'a
t
type 'a t
is the type of objects, where each object is part of an
equivalence class that is associated with a single value of type 'a
.val create : 'a -> 'a t
create v
returns a new object in its own equivalence class that has value
v
.val get : 'a t -> 'a
val set : 'a t -> 'a -> unit
val same_class : 'a t -> 'a t -> bool
val union : 'a t -> 'a t -> unit