[go] Sort 패키지를 이용한 예제 코드
이 예제에서는 Go 언어의 sort
패키지를 사용하여 데이터를 정렬하는 방법에 대해 살펴보겠습니다.
데이터 정렬하기
다음은 sort
패키지를 사용하여 정수형 슬라이스를 오름차순으로 정렬하는 예제 코드입니다.
package main
import (
"fmt"
"sort"
)
func main() {
data := []int{5, 2, 6, 3, 1, 4}
sort.Ints(data)
fmt.Println("정렬된 결과:", data)
}
이 예제에서는 sort.Ints()
함수를 사용하여 data
슬라이스를 오름차순으로 정렬합니다. 정렬된 결과는 fmt.Println
을 통해 출력됩니다.
사용자 지정 정렬
때로는 사용자가 정의한 방식에 따라 데이터를 정렬해야 할 수도 있습니다. 다음은 문자열을 길이에 따라 정렬하는 사용자 지정 정렬 함수를 정의한 예제 코드입니다.
package main
import (
"fmt"
"sort"
)
type ByLength []string
func (s ByLength) Len() int {
return len(s)
}
func (s ByLength) Swap(i, j int) {
s[i], s[j] = s[j], s[i]
}
func (s ByLength) Less(i, j int) bool {
return len(s[i]) < len(s[j])
}
func main() {
data := []string{"apple", "banana", "orange", "grape"}
sort.Sort(ByLength(data))
fmt.Println("정렬된 결과:", data)
}
이 예제에서는 sort.Sort()
함수를 사용하여 길이에 따라 문자열 슬라이스를 정렬합니다. 사용자 지정 정렬 함수를 구현하기 위해 Len()
, Swap()
, Less()
메서드를 정의합니다.
결론
이렇게 Go 언어의 sort
패키지를 사용하여 데이터를 간단하게 정렬할 수 있습니다. 사용자가 정의한 기준에 따라 데이터를 정렬하는 것 또한 간단하게 구현할 수 있는데요, sort
패키지는 강력하면서도 유연한 기능을 제공하여 다양한 정렬 요구사항을 충족시킬 수 있습니다.
더 자세한 내용은 Go 공식 문서의 sort 패키지를 참고하시기 바랍니다.