冒泡排序(算法)

72 阅读1分钟

冒泡排序是什么

冒泡排序是一种比较简单的排序算法。它重复地比较相邻的元素,并通过交换位置将大的元素逐渐“冒泡”到未排序的部分的末尾。具体步骤如下:

  1. 从列表的第一个元素开始,依次比较相邻的两个元素,如果前者大于后者,则交换它们的位置。
  2. 继续向后比较下一对相邻元素,重复执行交换操作。
  3. 重复以上步骤,直到到达未排序部分的末尾。
  4. 重复执行上述步骤,直到整个列表排序完成。

冒泡排序的时间复杂度为O(n^2),其中n是待排序列表的元素数量。尽管冒泡排序的效率较低,但对于较小的列表或者已经接近有序的列表,它仍然是一个可行的选择。

下面是java中冒泡排序的代码

import java.util.Arrays;
public class Test {
    public static void main(String[] args) {
        int[] arr = {30, 25, 45, 21, 24, 35, 95, 12};
        for (int i = 0; i < arr.length - 1; i++) {
            for (int j = 0; j < arr.length - i - 1; j++) {
                if (arr[j] > arr[j + 1]) {
                    //如果前面那个大于后面的那个 那么就调换位置
                    int temp = arr[j + 1];
                    arr[j + 1] = arr[j];
                    arr[j] = temp;
                }
            }
        }
        System.out.println(Arrays.toString(arr));
    }
}