クイックソート造句
- 例えば、最悪でも O(n log n) となるクイックソートは毎回中央値を探すことで実現できる。
- この単純な手続きは線形時間の性能であることが期待でき、実際クイックソートのようによい性能を示す。
- これらよりも効率的な手法として、マージソートやクイックソートに基づいた部分ソートアルゴリズムがある。
- クイックソート方式の方が簡単で、選択したい k 個の要素群(の一部)を含まないパーティションをソートしない。
- 例えば、大きなリストをソートする処理では、効率のよい汎用アルゴリズムの1つであるクイックソートを使うのが一般的である。
- クイックソートでは、2つに分けたリストをそれぞれ再帰的にソートしていき、最善で Ω(n log n) の時間がかかる。
- これは、元の配列を単純にマージソートでソートするよりも効率が悪いが、全体をクイックソートでソートするよりもメモリ使用量が少なくてすむ。
- しかし、事前にランダムに要素を入れ替えてからクイックソートを行うと、どんな入力であっても高い確率で O(n log n) の時間で完了する。
- 例えば、再帰型のクイックソートは主記憶上では良い性能だが、ソート対象の配列が主記憶に収まらない場合はスワップが頻繁に発生して、性能が極端に低下する。
- クイックソートでは、リストをある値より小さい数のリストとそれより大きい数のリストに分割するパーティションと呼ばれるサブプロシージャがあり、これは線形時間である。
- It's difficult to see クイックソート in a sentence. 用クイックソート造句挺难的
- 前述の最小値ベースの選択アルゴリズムは不完全な選択ソートだったが、これは不完全なクイックソートであり、O(n) のパーティションのうち O(log n) の部分だけを処理する。