Arrays.Sort Método

Definição

Sobrecargas

Nome Description
Sort(Object[], Int32, Int32, IComparator)

Classifica o intervalo especificado da matriz de objetos especificada de acordo com a ordem induzida pelo comparador especificado.

Sort(Byte[], Int32, Int32)

Classifica o intervalo especificado da matriz em ordem crescente.

Sort(Single[], Int32, Int32)

Classifica o intervalo especificado da matriz em ordem crescente.

Sort(Int64[], Int32, Int32)

Classifica o intervalo especificado da matriz em ordem crescente.

Sort(Int32[], Int32, Int32)

Classifica o intervalo especificado da matriz em ordem crescente.

Sort(Int16[], Int32, Int32)

Classifica o intervalo especificado da matriz em ordem crescente.

Sort(Double[], Int32, Int32)

Classifica o intervalo especificado da matriz em ordem crescente.

Sort(Char[], Int32, Int32)

Classifica o intervalo especificado da matriz em ordem crescente.

Sort(Object[], Int32, Int32)

Classifica o intervalo especificado da matriz de objetos especificada em ordem crescente, de acordo com a ordenação natural comparável de seus elementos.

Sort(Single[])

Classifica a matriz especificada em ordem numérica crescente.

Sort(Int64[])

Classifica a matriz especificada em ordem numérica crescente.

Sort(Int32[])

Classifica a matriz especificada em ordem numérica crescente.

Sort(Int16[])

Classifica a matriz especificada em ordem numérica crescente.

Sort(Double[])

Classifica a matriz especificada em ordem numérica crescente.

Sort(Char[])

Classifica a matriz especificada em ordem numérica crescente.

Sort(Byte[])

Classifica a matriz especificada em ordem numérica crescente.

Sort(Object[])

Classifica a matriz de objetos especificada em ordem crescente, de acordo com a ordenação natural comparável de seus elementos.

Sort(Object[], IComparator)

Classifica a matriz de objetos especificada de acordo com a ordem induzida pelo comparador especificado.

Sort(Object[], Int32, Int32, IComparator)

Classifica o intervalo especificado da matriz de objetos especificada de acordo com a ordem induzida pelo comparador especificado.

[Android.Runtime.Register("sort", "([Ljava/lang/Object;IILjava/util/Comparator;)V", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public static void Sort(Java.Lang.Object[] a, int fromIndex, int toIndex, Java.Util.IComparator? c);
[<Android.Runtime.Register("sort", "([Ljava/lang/Object;IILjava/util/Comparator;)V", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
static member Sort : Java.Lang.Object[] * int * int * Java.Util.IComparator -> unit

Parâmetros

a
Object[]

a matriz a ser classificada

fromIndex
Int32

o índice do primeiro elemento (inclusivo) a ser classificado

toIndex
Int32

o índice do último elemento (exclusivo) a ser classificado

c
IComparator

o comparador para determinar a ordem da matriz. Um null valor indica que a ordenação natural comparável dos elementos deve ser usada.

Atributos

Comentários

Classifica o intervalo especificado da matriz de objetos especificada de acordo com a ordem induzida pelo comparador especificado. O intervalo a ser classificado estende-se do índice fromIndex, inclusive, ao índice toIndex, exclusivo. (Se fromIndex==toIndex, o intervalo a ser classificado estiver vazio.) Todos os elementos no intervalo devem ser mutuamente comparáveis pelo comparador especificado (ou seja, c.compare(e1, e2) não devem gerar um ClassCastException para nenhum elemento e1 e e2 no intervalo).

Essa classificação é garantida como estável: elementos iguais não serão reordenados como resultado da classificação.

Observação de implementação: essa implementação é um mergesort estável, adaptável e iterativo que requer muito menos do que n lg(n) comparações quando a matriz de entrada é parcialmente classificada, ao mesmo tempo em que oferece o desempenho de um mergesort tradicional quando a matriz de entrada é ordenada aleatoriamente. Se a matriz de entrada estiver quase classificada, a implementação exigirá aproximadamente n comparações. Os requisitos de armazenamento temporário variam de uma pequena constante para matrizes de entrada quase classificadas para referências de objeto n/2 para matrizes de entrada ordenadas aleatoriamente.

A implementação aproveita igualmente a ordem crescente e decrescente em sua matriz de entrada e pode aproveitar a ordem crescente e decrescente em diferentes partes da mesma matriz de entrada. É adequado mesclar duas ou mais matrizes classificadas: simplesmente concatenar as matrizes e classificar a matriz resultante.

A implementação foi adaptada da classificação de lista de Tim Peters para Python (TimSort). Ele usa técnicas da "Complexidade Teóética de Informações e Classificação Otimista" de Peter McIlroy no Proceedings of the Fourth Annual ACM-SIAM Symposium on Discrete Algorithms, pp 467-474, janeiro de 1993.

Documentação Java para java.util.Arrays.sort(T[], int, int, java.util.Comparator<? super T>).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a

Sort(Byte[], Int32, Int32)

Classifica o intervalo especificado da matriz em ordem crescente.

[Android.Runtime.Register("sort", "([BII)V", "")]
public static void Sort(byte[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([BII)V", "")>]
static member Sort : byte[] * int * int -> unit

Parâmetros

a
Byte[]

a matriz a ser classificada

fromIndex
Int32

o índice do primeiro elemento, inclusive, a ser classificado

toIndex
Int32

o índice do último elemento, exclusivo, a ser classificado

Atributos

Exceções

if start > end.

se start ou end > array.length.

Comentários

Classifica o intervalo especificado da matriz em ordem crescente. O intervalo a ser classificado estende-se do índice fromIndex, inclusive, para o índice toIndex, exclusivo. Se fromIndex == toIndexo intervalo a ser classificado estiver vazio.

Documentação Java para java.util.Arrays.sort(byte[], int, int).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a

Sort(Single[], Int32, Int32)

Classifica o intervalo especificado da matriz em ordem crescente.

[Android.Runtime.Register("sort", "([FII)V", "")]
public static void Sort(float[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([FII)V", "")>]
static member Sort : single[] * int * int -> unit

Parâmetros

a
Single[]

a matriz a ser classificada

fromIndex
Int32

o índice do primeiro elemento, inclusive, a ser classificado

toIndex
Int32

o índice do último elemento, exclusivo, a ser classificado

Atributos

Exceções

if start > end.

se start ou end > array.length.

Comentários

Classifica o intervalo especificado da matriz em ordem crescente. O intervalo a ser classificado estende-se do índice fromIndex, inclusive, para o índice toIndex, exclusivo. Se fromIndex == toIndexo intervalo a ser classificado estiver vazio.

A < relação não fornece uma ordem total em todos os valores flutuantes: -0.0f == 0.0f é true e um Float.NaN valor não é comparado nem menor que, maior que, nem igual a qualquer valor, mesmo ele mesmo. Esse método usa a ordem total imposta pelo método Float#compareTo: -0.0f é tratado como menor que o valor 0.0f e Float.NaN é considerado maior que qualquer outro valor e todos os Float.NaN valores são considerados iguais.

Documentação Java para java.util.Arrays.sort(float[], int, int).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Confira também

Aplica-se a

Sort(Int64[], Int32, Int32)

Classifica o intervalo especificado da matriz em ordem crescente.

[Android.Runtime.Register("sort", "([JII)V", "")]
public static void Sort(long[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([JII)V", "")>]
static member Sort : int64[] * int * int -> unit

Parâmetros

a
Int64[]

a matriz a ser classificada

fromIndex
Int32

o índice do primeiro elemento, inclusive, a ser classificado

toIndex
Int32

o índice do último elemento, exclusivo, a ser classificado

Atributos

Exceções

if start > end.

se start ou end > array.length.

Comentários

Classifica o intervalo especificado da matriz em ordem crescente. O intervalo a ser classificado estende-se do índice fromIndex, inclusive, para o índice toIndex, exclusivo. Se fromIndex == toIndexo intervalo a ser classificado estiver vazio.

Documentação Java para java.util.Arrays.sort(long[], int, int).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a

Sort(Int32[], Int32, Int32)

Classifica o intervalo especificado da matriz em ordem crescente.

[Android.Runtime.Register("sort", "([III)V", "")]
public static void Sort(int[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([III)V", "")>]
static member Sort : int[] * int * int -> unit

Parâmetros

a
Int32[]

a matriz a ser classificada

fromIndex
Int32

o índice do primeiro elemento, inclusive, a ser classificado

toIndex
Int32

o índice do último elemento, exclusivo, a ser classificado

Atributos

Exceções

if start > end.

se start ou end > array.length.

Comentários

Classifica o intervalo especificado da matriz em ordem crescente. O intervalo a ser classificado estende-se do índice fromIndex, inclusive, para o índice toIndex, exclusivo. Se fromIndex == toIndexo intervalo a ser classificado estiver vazio.

Documentação Java para java.util.Arrays.sort(int[], int, int).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a

Sort(Int16[], Int32, Int32)

Classifica o intervalo especificado da matriz em ordem crescente.

[Android.Runtime.Register("sort", "([SII)V", "")]
public static void Sort(short[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([SII)V", "")>]
static member Sort : int16[] * int * int -> unit

Parâmetros

a
Int16[]

a matriz a ser classificada

fromIndex
Int32

o índice do primeiro elemento, inclusive, a ser classificado

toIndex
Int32

o índice do último elemento, exclusivo, a ser classificado

Atributos

Exceções

if start > end.

se start ou end > array.length.

Comentários

Classifica o intervalo especificado da matriz em ordem crescente. O intervalo a ser classificado estende-se do índice fromIndex, inclusive, para o índice toIndex, exclusivo. Se fromIndex == toIndexo intervalo a ser classificado estiver vazio.

Documentação Java para java.util.Arrays.sort(short[], int, int).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a

Sort(Double[], Int32, Int32)

Classifica o intervalo especificado da matriz em ordem crescente.

[Android.Runtime.Register("sort", "([DII)V", "")]
public static void Sort(double[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([DII)V", "")>]
static member Sort : double[] * int * int -> unit

Parâmetros

a
Double[]

a matriz a ser classificada

fromIndex
Int32

o índice do primeiro elemento, inclusive, a ser classificado

toIndex
Int32

o índice do último elemento, exclusivo, a ser classificado

Atributos

Exceções

if start > end.

se start ou end > array.length.

Comentários

Classifica o intervalo especificado da matriz em ordem crescente. O intervalo a ser classificado estende-se do índice fromIndex, inclusive, para o índice toIndex, exclusivo. Se fromIndex == toIndexo intervalo a ser classificado estiver vazio.

A < relação não fornece uma ordem total em todos os valores duplos: -0.0d == 0.0d é true e um Double.NaN valor não é comparado nem menor que, maior que, nem igual a qualquer valor, mesmo ele mesmo. Esse método usa a ordem total imposta pelo método Double#compareTo: -0.0d é tratado como menor que o valor 0.0d e Double.NaN é considerado maior que qualquer outro valor e todos os Double.NaN valores são considerados iguais.

Documentação Java para java.util.Arrays.sort(double[], int, int).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Confira também

Aplica-se a

Sort(Char[], Int32, Int32)

Classifica o intervalo especificado da matriz em ordem crescente.

[Android.Runtime.Register("sort", "([CII)V", "")]
public static void Sort(char[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([CII)V", "")>]
static member Sort : char[] * int * int -> unit

Parâmetros

a
Char[]

a matriz a ser classificada

fromIndex
Int32

o índice do primeiro elemento, inclusive, a ser classificado

toIndex
Int32

o índice do último elemento, exclusivo, a ser classificado

Atributos

Exceções

if start > end.

se start ou end > array.length.

Comentários

Classifica o intervalo especificado da matriz em ordem crescente. O intervalo a ser classificado estende-se do índice fromIndex, inclusive, para o índice toIndex, exclusivo. Se fromIndex == toIndexo intervalo a ser classificado estiver vazio.

Documentação Java para java.util.Arrays.sort(char[], int, int).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a

Sort(Object[], Int32, Int32)

Classifica o intervalo especificado da matriz de objetos especificada em ordem crescente, de acordo com a ordenação natural comparável de seus elementos.

[Android.Runtime.Register("sort", "([Ljava/lang/Object;II)V", "")]
public static void Sort(Java.Lang.Object[] a, int fromIndex, int toIndex);
[<Android.Runtime.Register("sort", "([Ljava/lang/Object;II)V", "")>]
static member Sort : Java.Lang.Object[] * int * int -> unit

Parâmetros

a
Object[]

a matriz a ser classificada

fromIndex
Int32

o índice do primeiro elemento (inclusivo) a ser classificado

toIndex
Int32

o índice do último elemento (exclusivo) a ser classificado

Atributos

Exceções

se qualquer elemento não implementar Comparable, ou se compareTo for gerado para qualquer par de elementos.

if start > end.

se start ou end > array.length.

Comentários

Classifica o intervalo especificado da matriz de objetos especificada em ordem crescente, de acordo com a ordenação natural comparável de seus elementos. O intervalo a ser classificado estende-se do índice fromIndex, inclusive, ao índice toIndex, exclusivo. (Se fromIndex==toIndex, o intervalo a ser classificado estiver vazio.) Todos os elementos nesse intervalo devem implementar a Comparable interface. Além disso, todos os elementos nesse intervalo devem ser mutuamente comparáveis (ou seja, e1.compareTo(e2) não devem gerar um ClassCastException para nenhum elemento e1 e e2 na matriz).

Essa classificação é garantida como estável: elementos iguais não serão reordenados como resultado da classificação.

Observação de implementação: essa implementação é um mergesort estável, adaptável e iterativo que requer muito menos do que n lg(n) comparações quando a matriz de entrada é parcialmente classificada, ao mesmo tempo em que oferece o desempenho de um mergesort tradicional quando a matriz de entrada é ordenada aleatoriamente. Se a matriz de entrada estiver quase classificada, a implementação exigirá aproximadamente n comparações. Os requisitos de armazenamento temporário variam de uma pequena constante para matrizes de entrada quase classificadas para referências de objeto n/2 para matrizes de entrada ordenadas aleatoriamente.

A implementação aproveita igualmente a ordem crescente e decrescente em sua matriz de entrada e pode aproveitar a ordem crescente e decrescente em diferentes partes da mesma matriz de entrada. É adequado mesclar duas ou mais matrizes classificadas: simplesmente concatenar as matrizes e classificar a matriz resultante.

A implementação foi adaptada da classificação de lista de Tim Peters para Python (TimSort). Ele usa técnicas da "Complexidade Teóética de Informações e Classificação Otimista" de Peter McIlroy no Proceedings of the Fourth Annual ACM-SIAM Symposium on Discrete Algorithms, pp 467-474, janeiro de 1993.

Documentação Java para java.util.Arrays.sort(java.lang.Object[], int, int).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a

Sort(Single[])

Classifica a matriz especificada em ordem numérica crescente.

[Android.Runtime.Register("sort", "([F)V", "")]
public static void Sort(float[] a);
[<Android.Runtime.Register("sort", "([F)V", "")>]
static member Sort : single[] -> unit

Parâmetros

a
Single[]

a matriz a ser classificada

Atributos

Comentários

Classifica a matriz especificada em ordem numérica crescente.

A < relação não fornece uma ordem total em todos os valores flutuantes: -0.0f == 0.0f é true e um Float.NaN valor não é comparado nem menor que, maior que, nem igual a qualquer valor, mesmo ele mesmo. Esse método usa a ordem total imposta pelo método Float#compareTo: -0.0f é tratado como menor que o valor 0.0f e Float.NaN é considerado maior que qualquer outro valor e todos os Float.NaN valores são considerados iguais.

Documentação Java para java.util.Arrays.sort(float[]).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Confira também

  • <xref:Java.Util.Arrays.Sort(System.Single%5b%5d%2c+System.Int32%2c+System.Int32)>

Aplica-se a

Sort(Int64[])

Classifica a matriz especificada em ordem numérica crescente.

[Android.Runtime.Register("sort", "([J)V", "")]
public static void Sort(long[] a);
[<Android.Runtime.Register("sort", "([J)V", "")>]
static member Sort : int64[] -> unit

Parâmetros

a
Int64[]

a matriz a ser classificada

Atributos

Comentários

Classifica a matriz especificada em ordem numérica crescente.

Documentação Java para java.util.Arrays.sort(long[]).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a

Sort(Int32[])

Classifica a matriz especificada em ordem numérica crescente.

[Android.Runtime.Register("sort", "([I)V", "")]
public static void Sort(int[] a);
[<Android.Runtime.Register("sort", "([I)V", "")>]
static member Sort : int[] -> unit

Parâmetros

a
Int32[]

a matriz a ser classificada

Atributos

Comentários

Classifica a matriz especificada em ordem numérica crescente.

Documentação Java para java.util.Arrays.sort(int[]).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a

Sort(Int16[])

Classifica a matriz especificada em ordem numérica crescente.

[Android.Runtime.Register("sort", "([S)V", "")]
public static void Sort(short[] a);
[<Android.Runtime.Register("sort", "([S)V", "")>]
static member Sort : int16[] -> unit

Parâmetros

a
Int16[]

a matriz a ser classificada

Atributos

Comentários

Classifica a matriz especificada em ordem numérica crescente.

Documentação Java para java.util.Arrays.sort(short[]).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a

Sort(Double[])

Classifica a matriz especificada em ordem numérica crescente.

[Android.Runtime.Register("sort", "([D)V", "")]
public static void Sort(double[] a);
[<Android.Runtime.Register("sort", "([D)V", "")>]
static member Sort : double[] -> unit

Parâmetros

a
Double[]

a matriz a ser classificada

Atributos

Comentários

Classifica a matriz especificada em ordem numérica crescente.

A < relação não fornece uma ordem total em todos os valores duplos: -0.0d == 0.0d é true e um Double.NaN valor não é comparado nem menor que, maior que, nem igual a qualquer valor, mesmo ele mesmo. Esse método usa a ordem total imposta pelo método Double#compareTo: -0.0d é tratado como menor que o valor 0.0d e Double.NaN é considerado maior que qualquer outro valor e todos os Double.NaN valores são considerados iguais.

Documentação Java para java.util.Arrays.sort(double[]).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Confira também

  • <xref:Java.Util.Arrays.Sort(System.Double%5b%5d%2c+System.Int32%2c+System.Int32)>

Aplica-se a

Sort(Char[])

Classifica a matriz especificada em ordem numérica crescente.

[Android.Runtime.Register("sort", "([C)V", "")]
public static void Sort(char[] a);
[<Android.Runtime.Register("sort", "([C)V", "")>]
static member Sort : char[] -> unit

Parâmetros

a
Char[]

a matriz a ser classificada

Atributos

Comentários

Classifica a matriz especificada em ordem numérica crescente.

Documentação Java para java.util.Arrays.sort(char[]).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a

Sort(Byte[])

Classifica a matriz especificada em ordem numérica crescente.

[Android.Runtime.Register("sort", "([B)V", "")]
public static void Sort(byte[] a);
[<Android.Runtime.Register("sort", "([B)V", "")>]
static member Sort : byte[] -> unit

Parâmetros

a
Byte[]

a matriz a ser classificada

Atributos

Comentários

Classifica a matriz especificada em ordem numérica crescente.

Documentação Java para java.util.Arrays.sort(byte[]).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a

Sort(Object[])

Classifica a matriz de objetos especificada em ordem crescente, de acordo com a ordenação natural comparável de seus elementos.

[Android.Runtime.Register("sort", "([Ljava/lang/Object;)V", "")]
public static void Sort(Java.Lang.Object[] a);
[<Android.Runtime.Register("sort", "([Ljava/lang/Object;)V", "")>]
static member Sort : Java.Lang.Object[] -> unit

Parâmetros

a
Object[]

a matriz a ser classificada

Atributos

Exceções

se qualquer elemento não implementar Comparable, ou se compareTo for gerado para qualquer par de elementos.

Comentários

Classifica a matriz de objetos especificada em ordem crescente, de acordo com a ordenação natural comparável de seus elementos. Todos os elementos na matriz devem implementar a Comparable interface. Além disso, todos os elementos na matriz devem ser mutuamente comparáveis (ou seja, e1.compareTo(e2) não devem gerar um ClassCastException para nenhum elemento e1 e e2 na matriz).

Essa classificação é garantida como estável: elementos iguais não serão reordenados como resultado da classificação.

Observação de implementação: essa implementação é um mergesort estável, adaptável e iterativo que requer muito menos do que n lg(n) comparações quando a matriz de entrada é parcialmente classificada, ao mesmo tempo em que oferece o desempenho de um mergesort tradicional quando a matriz de entrada é ordenada aleatoriamente. Se a matriz de entrada estiver quase classificada, a implementação exigirá aproximadamente n comparações. Os requisitos de armazenamento temporário variam de uma pequena constante para matrizes de entrada quase classificadas para referências de objeto n/2 para matrizes de entrada ordenadas aleatoriamente.

A implementação aproveita igualmente a ordem crescente e decrescente em sua matriz de entrada e pode aproveitar a ordem crescente e decrescente em diferentes partes da mesma matriz de entrada. É adequado mesclar duas ou mais matrizes classificadas: simplesmente concatenar as matrizes e classificar a matriz resultante.

A implementação foi adaptada da classificação de lista de Tim Peters para Python (TimSort). Ele usa técnicas da "Complexidade Teóética de Informações e Classificação Otimista" de Peter McIlroy no Proceedings of the Fourth Annual ACM-SIAM Symposium on Discrete Algorithms, pp 467-474, janeiro de 1993.

Documentação Java para java.util.Arrays.sort(java.lang.Object[]).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a

Sort(Object[], IComparator)

Classifica a matriz de objetos especificada de acordo com a ordem induzida pelo comparador especificado.

[Android.Runtime.Register("sort", "([Ljava/lang/Object;Ljava/util/Comparator;)V", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public static void Sort(Java.Lang.Object[] a, Java.Util.IComparator? c);
[<Android.Runtime.Register("sort", "([Ljava/lang/Object;Ljava/util/Comparator;)V", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
static member Sort : Java.Lang.Object[] * Java.Util.IComparator -> unit

Parâmetros

a
Object[]

a matriz a ser classificada

c
IComparator

o comparador para determinar a ordem da matriz. Um null valor indica que a ordenação natural comparável dos elementos deve ser usada.

Atributos

Comentários

Classifica a matriz de objetos especificada de acordo com a ordem induzida pelo comparador especificado. Todos os elementos na matriz devem ser mutuamente comparáveis pelo comparador especificado (ou seja, c.compare(e1, e2) não devem gerar um ClassCastException para nenhum elemento e1 e e2 na matriz).

Essa classificação é garantida como estável: elementos iguais não serão reordenados como resultado da classificação.

Observação de implementação: essa implementação é um mergesort estável, adaptável e iterativo que requer muito menos do que n lg(n) comparações quando a matriz de entrada é parcialmente classificada, ao mesmo tempo em que oferece o desempenho de um mergesort tradicional quando a matriz de entrada é ordenada aleatoriamente. Se a matriz de entrada estiver quase classificada, a implementação exigirá aproximadamente n comparações. Os requisitos de armazenamento temporário variam de uma pequena constante para matrizes de entrada quase classificadas para referências de objeto n/2 para matrizes de entrada ordenadas aleatoriamente.

A implementação aproveita igualmente a ordem crescente e decrescente em sua matriz de entrada e pode aproveitar a ordem crescente e decrescente em diferentes partes da mesma matriz de entrada. É adequado mesclar duas ou mais matrizes classificadas: simplesmente concatenar as matrizes e classificar a matriz resultante.

A implementação foi adaptada da classificação de lista de Tim Peters para Python (TimSort). Ele usa técnicas da "Complexidade Teóética de Informações e Classificação Otimista" de Peter McIlroy no Proceedings of the Fourth Annual ACM-SIAM Symposium on Discrete Algorithms, pp 467-474, janeiro de 1993.

Documentação Java para java.util.Arrays.sort(T[], java.util.Comparator<? super T>).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a