バブルソート

バブルソートは最も単純な整列法です。

バブルソートアルゴリズム

  1. 配列の末尾から先頭に向かって隣り合う要素を比較する
  2. 後ろの要素が前の要素よりも小さければ交換する
  3. 1と2を繰り返す

以下が、バブルソートJavaプログラムです。

import java.util.Arrays;

public class BubbleSort {
	public static void main(String[] args) {
		int[] array = {2, 5, 8, 6, 10, 1, 3, 7, 9, 4};

		for (int i = 0; i < array.length - 1; i++) {
			for (int j = array.length - 1; j > i; j--) {
				if (array[j - 1] > array[j]) {
					int x = array[j - 1];
					array[j - 1] = array[j];
					array[j] = x;
				}
			}
		}

		Arrays.stream(array).forEach(System.out::println);
	}
}

出力結果

1
2
3
4
5
6
7
8
9
10

参考:基礎から学ぶデータ構造とアルゴリズム 著:穴田有一・林雄二