冒泡排序 最大的在最后面

public class MaoPao {
    public static void main(String[] args) {
        //冒泡排序 最大的放在最后面
        //定义一个数组
        int[]arr={11,99,0,3,5,6,5,3,5,8,1};
        //前一个数和后一个数比较如果 后一个数大 放在后面
        //第一位3和第二位5比较  5比较大  5放后面;
        //当前排序是XXX;第二位3和第三位8比较,8放第二位;
        //当前排序XXX;第三位3和1第四位比较,3放第三位;数组长度4 一个循环里交换三次  ;有4个数字 需要循环3次做排序

        for (int i = 1; i < arr.length; i++) {//后一个值
            int temp=0;//临时变量 大的和小的交换位置
            for (int j = 0; j <arr.length ; j++) {//前一个值
                //找到大的那个放后面
                if(arr[j]>arr[i]){//如果前面的值小,交换位置
                    temp=arr[j];//先拿下标j的放临时变量里
                    arr[j]=arr[i];//将下标i放到空出来的j下标里
                    arr[i]=temp;//将已经放在临时变量中的j 放到i下标里

                }

            }

        }
        //遍历整理后的数组
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i]+" ");

        }
    }
}

 

posted @ 2023-06-21 17:12  胖豆芽  阅读(3)  评论(0编辑  收藏  举报