バケットソート

読み方、または別称:ぱけっとそーと

バケットソートとは、ソートのアルゴリズムのひとつで、計算時間はO(n)と高速だが、要素の定義域分の外部記憶を必要とする。大きく2つの実装があり、1つは可変個の要素を保持できるデータ構造を使い、バケツを表現するというものである。

例えば、m個の線形リストを使う実装がある。この実装は直感的には理解しやすい実装であるが、単純な配列だけでなく、可変長のデータ構造が必要になる。その為、可変長のデータ構造がない言語では、その実装コストを考慮しなければならなくなる。

もう1つは、いったん整列対象のデータを走査し値ごとに出現回数を数え、それに応じひとつの配列の中を値ごとに分割する方法である。この場合、バケットソートのみを指すと、分布数えソートという呼び方になる。例えばだが、3 2 2 1 2 2 1 3 3 1 2 3の場合、昇順にソートすると、1 1 1 2 2 2 2 2 3 3 3 3となる。

バケットソートは、安定ソートを実現うるために同じバケツに入っているデータを入れたときと同じ順序で取り出さなければならない。しかし保存されていない場合は、ソートは可能だが安定ソードではなくなる。

ページトップへ戻る

話題の用語~今ホットな用語をご紹介

ITと社会用語辞典

ワークロード

ワークロードとは、システムのパフォーマンスを適正な状態に保つための指標のこと。

インターネット用語辞典

ライフログ

ライフログとは、人間の活動の記録(行動履歴)をデジタルデータとして記録すること、およびその記録のことである。

ページトップへ戻る