Go에서 정수 조각을 역정렬하는 방법
Go에서는 정수 조각을 역정렬해야 하는 경우가 있습니다. 가장 높은 숫자가 먼저 나열되는 정수입니다. 이는 가장 낮은 것부터 높은 것까지 정렬하는 기본 정렬 동작과 다릅니다.
역 정렬을 수행하려면 단순히 sort.Ints와 sort.Reverse를 결합할 수 없습니다. sort.Ints를 사용하면 몇 가지 정수를 정렬하기 위한 편리한 함수가 생성되는 반면, sort.Reverse는 sort.Interface 인터페이스를 구현하는 유형을 기대합니다. 그러나 sort 패키지는 이 문제를 해결하는 IntSlice라는 사전 정의된 유형을 제공합니다.
해결책:
keys := []int{3, 2, 8, 1} sort.Sort(sort.Reverse(sort.IntSlice(keys))) fmt.Println(keys) // Output: [8 3 2 1]
IntSlice는 sort.Interface를 구현하는 정수 조각입니다. , 이는 Less 메소드로 정렬할 수 있음을 의미합니다. sort.Reverse는 Less의 순서를 바꾸는 새로운 유형을 생성하여 효과적으로 역 정렬을 제공합니다.
이 방법을 사용하면 사용자 정의 정렬 알고리즘이나 복잡한 인터페이스 없이도 정수 조각을 효율적으로 역 정렬할 수 있습니다.
위 내용은 Go에서 정수 조각을 역정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!