Java基础6-数组排序

排序注意

数组的每一次排序,是对数组本身进行修改,数组是引用对象,所以是直接对数组引用的地址进行修改,而并非将值改变。

Java基础6-数组排序 

冒泡排序

import java.util.Arrays;

public class Main {
    public static void main(String[] args) {
        int[] ns = { 28, 12, 89, 73, 65, 18, 96, 50, 8, 36 };
        // 排序前:
        System.out.println(Arrays.toString(ns));
        for (int i = 0; i < ns.length - 1; i++) {
            for (int j = 0; j < ns.length - i - 1; j++) {
                if (ns[j] > ns[j+1]) {
                    // 交换ns[j]和ns[j+1]:
                    int tmp = ns[j];
                    ns[j] = ns[j+1];
                    ns[j+1] = tmp;
                }
            }
        }
        // 排序后:
        System.out.println(Arrays.toString(ns));
    }
}

Java基础6-数组排序

每一次的循环结束之后,最大的值会被排到最后一个,所以每次循环循环次数会减1,除去最后一次的循环对比。

Arrays.sort()

Java中,jdk自带排序方法,Arrays.sort(),可以直接将数组进行排序。

public static void main(String[] args) {
        int[] ns = { 28, 12, 89, 73, 65, 18, 96, 50, 8, 36 };
        Arrays.sort(ns);
        System.out.println(Arrays.toString(ns));
    }

 Java基础6-数组排序

 

上一篇:渗透测试提权靶场Billu box 刷题记录


下一篇:【做题记录】[SCOI2009]围豆豆