冒泡排序算法

**原理:**对存放原始数据的数组的相邻元素进行对比,若不符合规定次序,则交换元素位置,对于所有元素都进行这种操作,就可以将元素按照规定次序排列,又因为这种排序方式在由小到大进行排序时,会将较小的元素逐个向前移动,酷似气泡上浮,所以叫做冒泡排序。

**特点:**实现相对简单,但时间复杂度相对要高,为$O(N^2)$,适用于小规模数据集。

实现:

public class BubbleSort {
    public static void main(String[] args) {
        int[] arr = {5, 2, 8, 4, 9, 1};
				int n = arr.length;
				for (int i = 0; i < n - 1; i++) {
            for (int j = 0; j < n - i - 1; j++) {
                if (arr[j] > arr[j + 1]) {
                    int temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
            }
        }
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + " ");
        }
    }
}

选择排序算法