Arrays.sort()

Olá!

Quando eu faço isso:

Arrays.sort(meuArray);

Que algoritmo de ordenação é utilizado?

Se o seu array for de numeros, se não me engano vai do menor para o maior. Se for de String, fica em ordem alfabética. Para Classes, ele ordena pelo hashCode da classe.
Você pode alterar essa ordenação usando Comparator e Comparable.

Segundo a documentação (http://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html#sort%28int[]%29), é um Dual-Pivot QuickSort, uma variante do QuickSort.

A implementação não deve ser difícil de encontrar, se é o que você quer.

Abraço.

[quote=ErickRAR]Se o seu array for de numeros, se não me engano vai do menor para o maior. Se for de String, fica em ordem alfabética. Para Classes, ele ordena pelo hashCode da classe.
Você pode alterar essa ordenação usando Comparator e Comparable.[/quote]

Hmmm perdão, a minha dúvida era quanto ao método utilizado para isso, assim como o colega TerraSkilll explicou :stuck_out_tongue:

[quote=TerraSkilll]Segundo a documentação (http://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html#sort%28int[]%29), é um Dual-Pivot QuickSort, uma variante do QuickSort.

A implementação não deve ser difícil de encontrar, se é o que você quer.

Abraço.[/quote]

Uuuuh esqueci de procurar na documentação. Que vacilo rsrs.

Enfim, eu só conhecia a implementação tradicional do Quicksort. Vou pesquisar a respeito desta variante.

Valeu :wink: