美文网首页
排序算法(四)冒泡排序

排序算法(四)冒泡排序

作者: 又语 | 来源:发表于2021-11-05 09:11 被阅读0次

冒泡排序(Bubble Sort),是一种最基础的交换排序。思想是依次比较两个相邻的元素,如果顺序相反则交换这两个元素的位置,重复以上的比较操作直至没有相邻元素需要交换。

复杂度分析

  • 最好情况:O(n)
  • 最坏情况:O(n²)
  • 平均:O(n²)

Java 代码实现

import java.util.Arrays;

public class BubbleSort {
    
    public static void sort(int[] data) {
        int temp = 0;
        for (int i = 0; i < data.length; i++) {
            for (int j = 0; j < data.length - i - 1; j++) {
                if (data[j] > data[j + 1]) {
                    temp = data[j];
                    data[j] = data[j + 1];
                    data[j + 1] = temp;
                }
            }
            System.out.println(Arrays.toString(data));
        }
    }

    public static void main(String[] args) {
        int[] data = {34, 24, 93, 1, 32, 98, 18, 39};
        sort(data);
    }
}

运行结果

[24, 34, 1, 32, 93, 18, 39, 98]
[24, 1, 32, 34, 18, 39, 93, 98]
[1, 24, 32, 18, 34, 39, 93, 98]
[1, 24, 18, 32, 34, 39, 93, 98]
[1, 18, 24, 32, 34, 39, 93, 98]
[1, 18, 24, 32, 34, 39, 93, 98]
[1, 18, 24, 32, 34, 39, 93, 98]
[1, 18, 24, 32, 34, 39, 93, 98]

相关文章

网友评论

      本文标题:排序算法(四)冒泡排序

      本文链接:https://www.haomeiwen.com/subject/qwbhzltx.html