冒泡排序

来源:互联网 发布:asp网站源码 编辑:程序博客网 时间:2024/06/05 05:27
public class Maopao {
    public static void main(String[] args) {
        int[] arr = {4,6,4,2,1,3,2,1,4,4,5,5,4};
        /**
         * 使用for循环语句,循环起始变量i的值为数组arr长度减一,
         * 循环执行条件i大于于0,循环迭代赋值是i--。
         * i的值是从9递减到1,正好9轮
         */
        for (int i = arr.length-1; i >0; i--) {
            /**
             * 在控制轮数for循环里在编写一个for循环语句,
             * 循环起始变量j的值为0,循环执行条件j小于i
             * 循环迭代赋值是j++。这样每轮的比较次数会随轮数变化而递减
             */
            for (int j = 0; j < i; j++) {
                //使用if语句来判断每次比较后面的数是否比前面的数大
                if (arr[j]<arr[j+1]) {
                    //如果if条件成立,叫交换2个数据的位置
                    arr[j]=arr[j]+arr[j+1];
                    arr[j+1]=arr[j]-arr[j+1];
                    arr[j]=arr[j]-arr[j+1];
                    
                    
                }
            }
        }
        System.out.println(Arrays.toString(arr));
    }

}

0 0
原创粉丝点击