Go言語のsortパッケージで、データをソートする方法

Go言語では、sortパッケージのSort()関数を使ってスライスをソートできます。

最初に、sort パッケージをインポートする必要があります。

import "sort"

次に、スライスを定義します。たとえば、

numbers := []int{5, 3, 9, 1, 8}

次に、sort.Slice()関数を使ってスライスをソートできます。この関数は3つの引数を取ります。スライス、ソート関数、ソートの向きです。ソート関数はsort.Interfaceインタフェースに従う必要があり、整数のスライスのソートにはsort.Ints()関数を使うことができます。

sort.Slice(numbers, func(i, j int) bool {
    return numbers[i] < numbers[j]
})

ソートが行われると、スライスの要素は昇順に並べ替えられます。

ネイティブの完全なサンプルコードは次のとおりです。

package main

import (
	"fmt"
	"sort"
)

func main() {
	numbers := []int{5, 3, 9, 1, 8}
	
	sort.Slice(numbers, func(i, j int) bool {
		return numbers[i] < numbers[j]
	})
	
	fmt.Println(numbers)
}

コードを実行すると、[1 3 5 8 9] が出力されます。

bannerAds