func (set *Set) Intersection(other *Set) *Set {
	res := NewSet()

	for v := range set.List {
		_, ok := other.List[v]
		if !ok {
			continue
		}
		res.List[v] = struct{}{}
	}

	return res
}
// Intersection returns the intersection set
Intersection returns the intersection set
// Intersection returns the intersection set
func (set *Set) Intersection(other *Set) *Set {
	res := NewSet()
	for v := range set.List {
		_, ok := other.List[v]
		if !ok {
			continue
		}
		res.List[v] = struct{}{}
	}
	return res
}
func ( set * Set ) Intersection ( other * Set ) * Set { res := NewSet ( ) for v := range set . List { _ , ok := other . List [ v ] if ! ok { continue } res . List [ v ] = struct { } { } } return res }
Intersection returns the intersection set
Intersection returns the intersection set