Arrays.sort 实现原理

2020-06-28 11:21发布

Arrays.sort 实现原理

Arrays.sort 实现原理

1条回答
那年
2020-06-28 13:54

采用了归并排序和插入排序的混合算法,可分为两步:

1) 第一步就是把待排数组划分成一个个run,当然run不能太短,如果长度小于minrun这个阈值,则用插入排序进行扩充;

2) 第二步将run入栈,当栈顶的run的长度满足:runLen[n-2] <= runLen[n-1] + runLen[n]或者 runLen[n-1] <= runLen[n], 则对两个短run归并为一个新run,则到只剩栈顶元素时排序也完成了。


一周热门 更多>