java的冒泡排序法

技术博客 (112) 2023-12-17 18:01:01

大家好,我是小铁,今天又是写bug的一天…
java的冒泡排序法 (https://mushiming.com/) 技术博客 第1张

一丶今天我们来讲讲java中的冒泡排序法(老鸟请直接拷走下面的代码),废话不多说,直接上代码

package com.cn.tie;


public class Test {

    public static void main(String[] args) {

        Integer sum[] = {1,3,2,6,8,4};

        for(int i=0; i<sum.length-1; i++ ){ 
            for(int j=i+1; j<= sum.length-1; j++){  
                if(sum[j] > sum[i]){  //交换值
                    Integer arr = 0;
                    arr = sum[i];
                    sum[i] = sum[j];
                    sum[j] = arr;
                }
            }
        }
        for(int i=0; i<sum.length; i++){
            System.out.println(sum[i]);
        }
    }
}


二丶讲解思路

1.名称:
冒泡排序法

2.实现思路:
用相邻的两个数,进行比较。第一个和第二个比较,如果第二个比第一个大就进行交换。把最大的放在第一位,最后拿着这个最大的和剩余的相比较,如果遇到比它还大的就进行交换

3.代码讲解:
第一层for循环,当i=0时,它的值为1,j的初始值为i+1 也就是 i 的前一个数字,对应的值为3。继续走,两个值进行比较 3 比 1 大 就进行交换。这时就要注意了 值已经交换过来了 现在i=0的时候 对应的值为3了不是1了 因为进行了交换。j 控制着内层for循环 分别循环剩下的内容和i=0的值进行比较,如果遇到大的就进行交换。因为 i 与 j 都是代表的数组下标 所以 第一层循环为 数组的大小已减去一,因为下标从0开始,内层循环拿到剩余的数进行与i下标的值进行比较,因为初始值为i+1 随着i的改变而改变。所以咱们内层循环的大小为数组的大小已减去一
i=0的时候,最终的结果为
8,1,2,3,6,4
i=1的时候,最终的结果为
8,6,1,2,3,4
i=2
8,6,4,1,2,3
i=3

三丶感言

在这里我就不一一列举了,排序的方法很多,冒泡排序只是万千排序的一种。在此小铁只讲解这一种

时光总是很短暂的,又到了和大家说再见的时候。学习过程很枯燥,但是学到了,就会感到很充足。。以上文章,希望对大家有帮助。书写不易,请点个赞吧。有条件的话,点个关注。

我是小铁,一个实力与逗比的结合体…

THE END

发表回复