Go Tutorials

Go Programs

How to create a Set of size N in Go


How to create a Set of size N in Go ?

Answer

To create a set in Go, you can use a map where the keys represent the elements of the set. Go does not have a built-in set data structure, but you can simulate one using a map.



✐ Examples

1 Create a Set with Numbers

In this example,

  1. We define a function named createNumberSet that takes a variadic parameter numbers of type int. This parameter represents the elements to be added to the set.
  2. Inside the function, we initialize an empty map named set where the keys are of type int.
  3. We use a for loop to iterate over the provided numbers and add them as keys to the set map with a value of true.
  4. The function returns the created set.
  5. We call createNumberSet with some numbers and store the result in a variable named numberSet.

Go Program

package main

import (
	"fmt"
)

func createNumberSet(numbers ...int) map[int]bool {
	set := make(map[int]bool)
	for _, num := range numbers {
		set[num] = true
	}
	return set
}

func main() {
	numberSet := createNumberSet(1, 2, 3, 4, 5)
	fmt.Println("Number Set:", numberSet)
}

Output

Number Set: map[1:true 2:true 3:true 4:true 5:true]

2 Create a Set with Strings

In this example,

  1. We define a function named createStringSet that takes a variadic parameter strings of type string. This parameter represents the elements to be added to the set.
  2. Inside the function, we initialize an empty map named set where the keys are of type string.
  3. We use a for loop to iterate over the provided strings and add them as keys to the set map with a value of true.
  4. The function returns the created set.
  5. We call createStringSet with some strings and store the result in a variable named stringSet.

Go Program

package main

import (
	"fmt"
)

func createStringSet(strings ...string) map[string]bool {
	set := make(map[string]bool)
	for _, str := range strings {
		set[str] = true
	}
	return set
}

func main() {
	stringSet := createStringSet("apple", "banana", "orange")
	fmt.Println("String Set:", stringSet)
}

Output

String Set: map[apple:true banana:true orange:true]

Summary

In this tutorial, we learned How to create a Set of size N 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 ?