1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

基数ソートとは

  • 各ビットを最下位ビットから順に操作するLSB(Least Significant Bit)、各ビットを上位から操作するMSB(Most Significant Bit)が存在する
  • 比較を行わない非比較アルゴリズムで、データ全体を比較するのではなく、桁ごと、ビットごとに処理していく
  • 同じ値を持つ要素の順序はソート前の状態を保つため、安全なソート

利点

  • 安定した計算時間
  • ビットごとに処理されるので、要素自体の大きさに左右されない

欠点

  • 計算量はデータのビット数に依存するため、桁数が多い場合、計算量が増える

計算量

最良時間計算量:O(n * k)
最悪時間計算量:O(n * k)
平均時間計算量:O(n * k)

ソートアルゴリズム具体例

以下は、筆者が作成した基数ソートを用いた数字の並び替えプログラムです。

GitHubリポジトリはこちら

可視化デモ & 参考文献

radix_sort.gif

1
0
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?