Массивы и коллекции / Массивы и срезы

import (
    "fmt"
    "slices"
)

var numbers = []int{13213}
var unique1 = unique(numbers)
//unique1 is [1 3 2]

slices.Sort(numbers)
var unique2 = slices.Compact(numbers)
//unique2 is [1 2 3]

fmt.Println("unique1 is", unique1)
fmt.Println("unique2 is", unique2)


func unique(input []int) []int {
    result := make([]int0len(input))
    values := make(map[int]bool)

    for _, val := range input {
        if _, ok := values[val]; !ok {
            values[val] = true
            result = append(result, val)
        }
    }

    return result
}