disjoint_set.go
func MakeDisjointSet(forests *Forests, name string) {
	newDS := &DisjointSet{}
	newDS.represent = name
	members := make(map[string]struct{})
	members[name] = struct{}{}
	newDS.members = members
	forests.mu.Lock()
	defer forests.mu.Unlock()
	forests.data[newDS] = struct{}{}
}
func MakeDisjointSet(forests *Forests, name string) {
	newDS := &DisjointSet{}
	newDS.represent = name
	members := make(map[string]struct{})
	members[name] = struct{}{}
	newDS.members = members
	forests.mu.Lock()
	defer forests.mu.Unlock()
	forests.data[newDS] = struct{}{}
}
func MakeDisjointSet ( forests * Forests , name string ) { newDS := & DisjointSet { } newDS . represent = name members := make ( map [ string ] struct { } ) members [ name ] = struct { } { } newDS . members = members forests . mu . Lock ( ) defer forests . mu . Unlock ( ) forests . data [ newDS ] = struct { } { } }
// MakeDisjointSet creates a DisjointSet.
MakeDisjointSet creates a DisjointSet .