Por que o Collections.sort usa o Mergesort, mas o Arrays.sort não?
Estou usando o JDK-8 (x64). ParaArrays.sort
(primitivas) Encontrei o seguinte na documentação do Java:
O algoritmo de classificação é um pivô duploOrdenação rápida por Vladimir Yaroslavskiy, Jon Bentley e Joshua Bloch.`
ParaCollections.sort
(objetos) Encontrei este "Timsort":
Esta implementação é uma solução estável, adaptável, iterativafusão ... Esta implementaçãodespeja a lista especificada em uma matriz, classifica a matrize itera sobre a lista, redefinindo cada elemento da posição correspondente na matriz.
E seCollections.sort
usa uma matriz, por que não chama apenasArrays.sort
ou use o pivô duploOrdenação rápida? Por que usarMergesort?