logo

ソートアルゴリズム

並べ替えは、配列の要素を昇順または降順のいずれかに配置できるように配置するプロセスです。たとえば、配列 A = {A1, A2, A3, A4, ?? について考えてみましょう。 }、A の要素が A1 > A2 > A3 > A4 > A5 > ? のように配置されている場合、配列は昇順で呼び出されます。 > 。

配列を考えてみましょう。

int A[10] = { 5, 4, 10, 2, 30, 45, 34, 14, 18, 9 )

昇順にソートされた配列は次のようになります。

A[] = { 2、4、5、9、10、14、18、30、34、45 }

Java文字列を整数に変換

ソートを実行するには、さまざまなテクニックがあります。チュートリアルのこのセクションでは、各方法について詳しく説明します。

ソートアルゴリズム

並べ替えアルゴリズムについては、説明とともに次の表で説明します。

SN ソートアルゴリズム 説明
1 バブルソート これは、最大の要素を配列の最大のインデックスに繰り返し移動することによって並べ替えを実行する、最も単純な並べ替え方法です。これは、各要素を隣接する要素と比較し、それに応じて置き換えることで構成されます。
2 バケットソート バケット ソートはビン ソートとも呼ばれます。これは要素をバケットとも呼ばれる配列に分散することによって機能します。この並べ替えアルゴリズムでは、バケットは異なる並べ替えアルゴリズムを使用して個別に並べ替えられます。
3 コームソート コーム ソートはバブル ソートの発展形です。バブル ソートでは隣接するすべての値が比較され、コーム ソートではすべてのタートル値またはリストの最後近くにある小さな値が削除されます。
4 カウンティングソート これはキーに基づく並べ替え手法です。つまり、オブジェクトは小さな整数のキーに従って収集されます。カウンティングソートでは、オブジェクトの出現数を計算し、そのキー値を格納します。新しい配列は、前のキー要素を追加し、オブジェクトに割り当てることによって形成されます。
5 ヒープソート ヒープソートでは、選択に応じて配列要素から最小ヒープまたは最大ヒープが維持され、要素はヒープのルート要素を削除することによってソートされます。
6 挿入ソート 名前が示すように、挿入ソートは配列の各要素を適切な場所に挿入します。これは、ブリッジをプレイするときにカードの山を配置するために使用される非常に単純なソート方法です。
7 マージソート マージ ソートは分割統治アプローチに従います。このアプローチでは、まずリストが等しい要素のセットに分割され、次にリストの各半分がマージ ソートを使用してソートされます。ソートされたリストは再び結合されて、基本的なソートされた配列を形成します。
8 クイックソート クイック ソートは、O(n log n) 回の比較でソートを実行する、最も最適化されたソート アルゴリズムです。マージ ソートと同様に、クイック ソートも分割統治アプローチを使用して機能します。
9 ソート基数 基数ソートでは、名前をアルファベット順にソートするのと同じようにソートが行われます。これは、Inegers に使用される直線的ソート アルゴリズムです。
10 選択範囲の並べ替え 選択ソートは、配列内の最小の要素を見つけてリストの最初の場所に配置し、次に配列内で 2 番目に小さい要素を見つけて 2 番目の場所に配置します。このプロセスは、すべての要素が正しい順序に移動されるまで続きます。実行時間は O(n2) で、挿入ソートよりも最悪です。
十一 シェルソート シェル ソートは挿入ソートを一般化したもので、いくつかの位置のギャップで区切られた要素を比較することで挿入ソートの欠点を克服します。