Javaでバブルソートアルゴリズムを実装する方法–昇順と降順の例

公開: 2019-01-19
Javaでバブルソートアルゴリズムを実装する方法-昇順と降順の例

Bubble sort (誤ってsinking sortと呼ばれることもあります)は、ソートするリストを繰り返しステップ実行し、隣接するアイテムの各ペアを比較し、順序が間違っている場合はそれらを交換することで機能する単純なソートアルゴリズムです。

リストのパススルーは、スワップが不要になるまで繰り返されます。これは、リストがソートされていることを示します。 アルゴリズムの名前は、小さい要素がリストの一番上にbubbleする方法から付けられています。

要素を操作するために比較のみを使用するため、比較ソートです。 アルゴリズムは単純ですが、他のほとんどの並べ替えアルゴリズムは、大きなリストに対してより効率的です。

ロジックは単純です:

バブルソートでは、基本的に配列リストを最初の位置から(サイズ– 1)の位置までトラバースし、要素を次の位置と比較します。 次の要素が大きい場合にのみ、要素を次の要素と交換します。

Javaコードは次のとおりです。

  • ファイルCrunchifyBubbleSort.javaを作成します。

Eclipseコンソールの結果:

EclipseコンソールまたはIntelliJIDEでバブルソートJavaプログラムの上を実行するだけで、次のような結果が表示されます。

バブルソートアルゴリズムの時間計算量とは何ですか?

  • Best caseシナリオを検討すると、 O(n)になります。
  • Worst caseシナリオを考えると、 O(n 2 )になります。

上記のプログラムで問題や例外が発生した場合はお知らせください。