(JAVA学习笔记) 冒泡排序算法

public class Demo06 {

    public static void main(String[] args) {
        int[] arr  = {51,512,12,53,415,852,631,842,12,1,2,4,8};
        //进行排序
        sort(arr);
        //输出数组
        System.out.print(Arrays.toString(arr)+" ");
    }

    /**
     * 冒牌排序算法
     * 1.比较数组中两个相邻的元素,如果第一个数比第二个数大,就交换两个数的位置
     * 2.每一次比较都会产生一个最大,或者最小的数字
     * 3.下一轮则可以少一次排序
     * 4.依次循环,直到结束
     * @param arr
     */
    public static void sort(int arr[]){
        //临时变量
        int temp = 0;
        //外层循环,判断要走多少次
        for (int i = 0; i <arr.length ; i++) {
            //内层循环,判断两个数,如果第一个数比第二个数大,那么两个数交换位置
            for (int j = 0; j <arr.length-i-1 ; j++) {
                //升序用>,降序用<
                if(arr[j]>arr[j+1]){
                    temp = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = temp;
                }
            }
        }
    }
}

结果在这里插入图片描述

原创文章 18 获赞 3 访问量 387

猜你喜欢

转载自blog.csdn.net/qq_43601784/article/details/105925238
今日推荐