Java排序算法

标签 java arrays sorting

谁能给我解释一下这句话?

The sorting algorithm is a modified mergesort (in which the merge is omitted if the highest element in the low sublist is less than the lowest element in the high sublist).

链接:Arrays.sort(Object[] arr)

我知道 Merge 是如何工作的,但我还是不太了解。 谢谢。

最佳答案

Mergesort 递归地合并已排序的子列表。如果当前符合合并条件的子列表不包含重叠元素,则无需合并它们。将跳过合并操作。

例子:

List A
1 4 8 9

List B
10 12 14 19

不需要比较这些列表的过程,因为 9 是 A 的最大元素,而 10(B 的第一个元素)大于 A 的最大元素。结果只是 A 的串联和 B.

所有文件都在说,如果不需要综合处理,他们会走捷径。

关于Java排序算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4249794/

相关文章:

java - 迭代时删除和添加对象到列表

java - 计算字符串 java 中某个元素出现次数的代码

JavaScript 数组推送键值

java - 无 "duplicate"解的数组排列

c - 排序链表中的最高数字

c# - PowerShell 排序顺序不正确

python - Python的sort函数和linux的sort是一样的LC_ALL=C吗

java - 适用于多种数据库类型的 Liquibase 二进制数组

java - 如何从 Ant 中的目录名获取文件名?

arrays - VBA:删除数组项后减少循环的迭代次数?