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

排序算法(四)冒泡排序

作者: 又语 | 来源:发表于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