ホームページ >Java >&#&チュートリアル >Javaでバブルソート、選択ソート、クイックソートを実装する方法

Javaでバブルソート、選択ソート、クイックソートを実装する方法

PHPz
PHPz転載
2023-05-03 14:43:061705ブラウズ

1.バブル ソート

バブル ソート (バブル ソート) は、配列のすべての要素を対象とした最も単純な並べ替えです。要素はリング内で 2 つずつ比較され、交換する数値がなくなるまで数値が終了し、配列全体がソートされるまで次の数値が追加されます。一つ一つ浮いているのでバブルソートと呼ばれます。サイクル タイム 2 倍 O(n^2)

アルゴリズムの説明:

  1. 2 つの隣接するデータを比較します。最初の数字は 2 番目の数字より大きいので、2 つの数字を交換するだけです。

  2. 隣り合う数字ごとに同じ 1 の作業を行い、最初から最後まで 1 つのチームが最後 数字は最大の数字です。

  3. 最後の要素を除くすべての要素に対する操作。

  4. 注文が完了するまで、手順 1 ~ 3 を繰り返します。

コードの視覚化:

Javaでバブルソート、選択ソート、クイックソートを実装する方法

##コードの実装:

Javaでバブルソート、選択ソート、クイックソートを実装する方法

2. 選択ソート
選択ソートは、キーの最大値または最小値を決定し、バンド検索からソートすることで直感的にソートできます。最大または最小の数値を選択し、対応する位置に置き換えます。次善の選択肢を選択してください。ダブル ループの時間計算量は O(n^2)

アルゴリズムの説明:


  1. 長さ N の順序なしシーケンス内で配列を初めて n-1 個の数値を走査して最小の数値を見つけ、それを最初の数値と交換します。


  2. 次の数値から始まる n-2 個の数値を 2 度目にたどり、最小の数値を見つけて、それを 2 番目の数値と交換します。

  3. n-1 番目の走査で最小の番号と n-1 番目の番号が入れ替わるまで上記の操作を繰り返し、ソートが完了します。

アルゴリズムの視覚化:

Javaでバブルソート、選択ソート、クイックソートを実装する方法

## コード実装:

<code><p><img src="https://img.php.cn/upload/article/000/000/164/168309619043778.png" alt="Javaでバブルソート、選択ソート、クイックソートを実装する方法"><br></p></code>
3. クイック ソート
クイック ソート (QuickSort) は、安定性要因を除いた最も一般的に使用されるソートです。使用方法は 2 つあり、1 つは、通常のコードを記述するのと同じ、stdlib.h ファイルのヘッダー ファイルに qsort 関数を直接実装する方法です。配列のソートは、qsort (配列名、長さ、sizeof (最初の数値の長さ)、compInc/comoDec) を使用して実装されます。後者は再帰呼び出しの形式です。

アルゴリズムの説明:


    シーケンスからベンチマークとして要素を選択します。
  1. 順序を並べ替えて、ベンチマークより小さいものをすべてベンチマークの前に配置し、後ろに配置します(同じサイズが左右にある場合もあります)。ベンチマークはパーティションの中央に配置されます。
  2. 基本要素および大雨の基本要素よりも小さいサブシーケンスを再帰呼び出しによって並べ替えます。
# アルゴリズムの視覚化:

Javaでバブルソート、選択ソート、クイックソートを実装する方法## コード実装:

#

以上がJavaでバブルソート、選択ソート、クイックソートを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。