A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

//数组高级冒泡排序
public class Demo_arryToStrng {
public static void main(String[] args) {   
        int[] arr={2,23,53,12,43,290,99};      //定义一个数组
        bubblesort(arr);            //调用冒泡方法
        print(arr);         //调研输出打印方法
}
public static void bubblesort(int[] arr){   
        for(int i=0;i<arr.length-1;i++){        //每次冒泡排序方法中的指向的趟数,外循环只需要比较arr.length-1次就可以了
                for(int j=0;j<arr.length-1-i;j++){    //每执行一趟做的 比较的次数,-1为了防止索引越界,-i为了提高效率
                        if(arr[j]>arr[j+1]){           //相邻两个数的比较
                                swap(arr,j,j+1);            //调用相邻两个数的比较并交换位置的方法
                        }
                }
        }
}
public static void swap(int[] arr,int i,int j){        //创建一个位置交换的方法
        int temp=arr[i];         //此i非上边定义的冒泡执行趟数的i,而是比较两个数重新定义的i,j
        arr[i]=arr[j];          //前边的数大于后边的数,则将后边的较小的j赋值给前边的i
        arr[j]=temp;              
}
public static void print(int[] arr){
        for(int i=0;i<=arr.length-1;i++){        //定义输出语句的循环,每次冒泡输出的数用循环语句表示
                System.out.println(arr[i]+"");
        }
}
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马