0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Goでint型のスライスを昇順と降順でソートする方法

Last updated at Posted at 2020-06-24

##はじめに
intのスライスをソートする方法が分からなかったので調べてみました。
今回使用するスライスは、こちら

s := []int{4, -1, 12, -26, 5}

###昇順(小さいから大きい)でソート

sort.Ints(s)
fmt.Println(s)
// [-26 -1 4 5 12]

###降順(大きいから小さい)でソート

sort.Sort(sort.Reverse(sort.IntSlice(s)))
fmt.Println(s)
//[12 5 4 -1 -26]

##おまけ
スライスの中から一番大きい数字や小さい数字を見つけるコードも書いてみます。
###一番大きい数字を出力

sort.Ints(s)
//合計の要素数から-1(5-1=4番目の数字)
fmt.Println(s[len(s)-1]) 
//12

###一番小さい数字を出力

sort.Ints(s)
//スライスの0番目
fmt.Println(s[0])
//-26

##さいごに
調べてみると、比較演算子を使うやり方も出てきましたが、個人的に <>を使うのが苦手なので(こんがらがる)、パッケージを使った方法を使っていきたいと思います。

##参考にした記事など
sort - The Go Programming Language
配列 - ソートしたスライスの中身の数値だけ([]なし)で取り出す方法

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?