[go] Sort 패키지의 중복 요소 처리

Go 언어에서 중복 요소를 제거하고 싶을 때가 있을 수 있습니다. 이를 처리하기 위해 sort 패키지를 사용하여 중복 요소들을 쉽게 제거할 수 있습니다.

중복 요소 제거하기

Go에서 중복 요소를 제거하려면 다음과 같은 단계를 거칠 수 있습니다.

  1. 주어진 슬라이스를 정렬합니다.
  2. 중복된 요소를 제거합니다.

다행히도, sort 패키지는 정렬된 슬라이스에서 중복 요소를 식별하고 제거하는 함수를 제공합니다.

package main

import (
	"fmt"
	"sort"
)

func main() {
	// 정렬되지 않은 슬라이스
	values := []int{3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5}

	// 슬라이스를 정렬합니다
	sort.Ints(values)

	// 중복된 요소를 제거합니다
	uniqueValues := values[:0]
	for i := 0; i < len(values); {
		j := i + 1
		for ; j < len(values) && values[j] == values[i]; j++ {
		}
		uniqueValues = append(uniqueValues, values[i])
		i = j
	}

	// 중복된 요소를 제거한 슬라이스를 출력합니다
	fmt.Println(uniqueValues) // [1 2 3 4 5 6 9]
}

위의 코드에서는 sort.Ints 함수를 사용하여 슬라이스를 정렬하고, 중복된 요소를 식별하고 제거하기 위해 추가적인 로직을 구현하였습니다.

이제 sort 패키지를 사용하여 Go 언어에서 중복 요소를 효과적으로 제거할 수 있는 방법을 알게 되었습니다.

더 자세한 내용은 Go language - sort package 문서를 참고하세요.