[go] Sort 패키지의 중복 요소 처리
Go 언어에서 중복 요소를 제거하고 싶을 때가 있을 수 있습니다. 이를 처리하기 위해 sort
패키지를 사용하여 중복 요소들을 쉽게 제거할 수 있습니다.
중복 요소 제거하기
Go에서 중복 요소를 제거하려면 다음과 같은 단계를 거칠 수 있습니다.
- 주어진 슬라이스를 정렬합니다.
- 중복된 요소를 제거합니다.
다행히도, 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 문서를 참고하세요.