Go Tutorials

Go Programs

How to find Intersection of Two Sets in Go


How to find Intersection of Two Sets in Go ?

Answer

To find the intersection of two sets in Go, you can create a map for one set and then iterate through the other set to check for common elements.



✐ Examples

1 Find Intersection of Two Sets using Maps

In this example,

  1. We create two slices representing sets named set1 and set2.
  2. We iterate through set1 and store its elements in a map named set1Map.
  3. We iterate through set2 and check if each element is present in set1Map.
  4. If an element is present in both sets, we add it to the intersection slice.

Go Program

package main

import "fmt"

func main() {
    set1 := []int{1, 2, 3, 4, 5}
    set2 := []int{4, 5, 6, 7, 8}
    set1Map := make(map[int]bool)
    for _, num := range set1 {
        set1Map[num] = true
    }
    var intersection []int
    for _, num := range set2 {
        if set1Map[num] {
            intersection = append(intersection, num)
        }
    }
    fmt.Println(intersection)
}

Output

[4 5]

2 Find Intersection of Two Sets using Nested Loops

In this example,

  1. We create two slices representing sets named set1 and set2.
  2. We iterate through set1 using a nested loop and check if each element is present in set2.
  3. If an element is present in both sets, we add it to the intersection slice.

Go Program

package main

import "fmt"

func main() {
    set1 := []int{1, 2, 3, 4, 5}
    set2 := []int{4, 5, 6, 7, 8}
    var intersection []int
    for _, num1 := range set1 {
        for _, num2 := range set2 {
            if num1 == num2 {
                intersection = append(intersection, num1)
            }
        }
    }
    fmt.Println(intersection)
}

Output

[4 5]

Summary

In this tutorial, we learned How to find Intersection of Two Sets in Go language with well detailed examples.




More Go Sets Tutorials

  1. How to create an Empty Set in Go ?
  2. How to Initialize a Set in Go ?
  3. How to Get Length of a Set in Go ?
  4. How to create a Set of size N in Go ?
  5. How to create a Set of Numbers from 1 to N in Go ?
  6. How to create a Set of integers in Go ?
  7. How to create a Set of Strings in Go ?
  8. How to Access Items in a Set in Go ?
  9. How to get a Random Item in a Set in Go ?
  10. How to Iterate Over a Set in Go ?
  11. How to check if a Set is Empty in Go ?
  12. How to check if a Set is Not Empty in Go ?
  13. How to get Subset from a Set in Go ?
  14. How to check if a Specific Item is present in the Set in Go ?
  15. How to check if a Set contains all the items of Another Set in Go ?
  16. How to Sort Items of a Set in Go ?
  17. How to Copy a Set in Go ?
  18. How to add an Item to a Set in Go ?
  19. How to find Union of Two Sets in Go ?
  20. How to find Intersection of Two Sets in Go ?
  21. How to check if Two Sets are Equal in Go ?
  22. How to Convert a Set of Integers to a Set of Strings in Go ?
  23. How to Convert a Set of Strings to a Set of Integers in Go ?
  24. How to Convert a Set of Floats to a Set of Strings in Go ?
  25. How to Convert a Set of Strings to a Set of Floats in Go ?
  26. How to Filter Items of a Set based on a Condition in Go ?
  27. How to Remove Specific Item from a Set in Go ?
  28. How to Remove Items from Set based on a Condition in Go ?
  29. How to create a Set of Sets in Go ?