エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください
Twitterで共有ONにすると、次回以降このダイアログを飛ばしてTwitterに遷移します
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
はじめに Go言語の標準ライブラリであるsortパッケージの中身を覗き、ソートアルゴリズムの理解を深めた... はじめに Go言語の標準ライブラリであるsortパッケージの中身を覗き、ソートアルゴリズムの理解を深めたいと思います。 sortパッケージのソートの実装は大きく分けて2つあり、Sort関数とStable関数があります。 Sort関数は、クイックソートをベースとした実装になっており、安定ソートではありません。 []int,[]float64,[]stringの配列ソートは、それぞれのソート関数、Ints、Float64s、Stringsが内部でsort.Interfaceを満たす型に変更した後、Sort関数を呼んでいます。ソートのキーが一意なので安定ソートでなくとも問題ないです。 一方で、Stable関数は、マージソートをベースとした実装になっており、安定ソートです。こちらもsort.Interfaceを満たす型を渡して利用します。 Go1.8から導入されたSlice関数とSliceStab