Arrays.sort幻数

时间:2013-07-26 16:19:41

标签: java sorting

来自Arrays.sort源代码:

public static void sort(int[] a) {
    sort1(a, 0, a.length);
}

然后:

private static void sort1(int x[], int off, int len) {
    // Insertion sort on smallest arrays
    if (len < 7) {
        [...]
    }

    [...]
    if (len > 7) {
        [...]
    }
    [...]
}

这个神奇的数字7来自何处?为什么?

Link to the source code

1 个答案:

答案 0 :(得分:-1)

我相信当列表变得足够小时,Java排序算法会从mergesort切换到quicksort。该来源引用了一个文本,如果您感到好奇,可能需要检查一下。