Condividi tramite


Arrays.Sort Metodo

Definizione

Overload

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

Ordina l'intervallo specificato della matrice specificata di oggetti in base all'ordine indotto dal comparatore specificato.

Sort(Byte[], Int32, Int32)

Ordina l'intervallo specificato della matrice in ordine crescente.

Sort(Single[], Int32, Int32)

Ordina l'intervallo specificato della matrice in ordine crescente.

Sort(Int64[], Int32, Int32)

Ordina l'intervallo specificato della matrice in ordine crescente.

Sort(Int32[], Int32, Int32)

Ordina l'intervallo specificato della matrice in ordine crescente.

Sort(Int16[], Int32, Int32)

Ordina l'intervallo specificato della matrice in ordine crescente.

Sort(Double[], Int32, Int32)

Ordina l'intervallo specificato della matrice in ordine crescente.

Sort(Char[], Int32, Int32)

Ordina l'intervallo specificato della matrice in ordine crescente.

Sort(Object[], Int32, Int32)

Ordina l'intervallo specificato della matrice di oggetti specificata in ordine crescente, in base all'ordinamento naturale confrontabile dei relativi elementi.

Sort(Single[])

Ordina la matrice specificata in ordine numerico crescente.

Sort(Int64[])

Ordina la matrice specificata in ordine numerico crescente.

Sort(Int32[])

Ordina la matrice specificata in ordine numerico crescente.

Sort(Int16[])

Ordina la matrice specificata in ordine numerico crescente.

Sort(Double[])

Ordina la matrice specificata in ordine numerico crescente.

Sort(Char[])

Ordina la matrice specificata in ordine numerico crescente.

Sort(Byte[])

Ordina la matrice specificata in ordine numerico crescente.

Sort(Object[])

Ordina la matrice di oggetti specificata in ordine crescente, in base all'ordinamento naturale confrontabile dei relativi elementi.

Sort(Object[], IComparator)

Ordina la matrice specificata di oggetti in base all'ordine indotto dal comparatore specificato.

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

Ordina l'intervallo specificato della matrice specificata di oggetti in base all'ordine indotto dal comparatore specificato.

[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

Parametri

a
Object[]

matrice da ordinare

fromIndex
Int32

indice del primo elemento (inclusivo) da ordinare

toIndex
Int32

indice dell'ultimo elemento (esclusivo) da ordinare

c
IComparator

confronto per determinare l'ordine della matrice. Un null valore indica che è consigliabile utilizzare l'ordinamento naturale confrontabile degli elementi.

Attributi

Commenti

Ordina l'intervallo specificato della matrice specificata di oggetti in base all'ordine indotto dal comparatore specificato. L'intervallo da ordinare si estende dall'indice fromIndex, inclusivo, all'indice toIndex, esclusivo. Se fromIndex==toIndex, l'intervallo da ordinare è vuoto. Tutti gli elementi dell'intervallo devono essere reciprocamente confrontabili dal confronto specificato , c.compare(e1, e2) ovvero non devono generare un oggetto ClassCastException per gli elementi e1 e e2 nell'intervallo.

Questo ordinamento è garantito che sia stabile: gli elementi uguali non verranno riordinati in seguito all'ordinamento.

Nota di implementazione: questa implementazione è un mergesort stabile, adattivo e iterativo che richiede confronti molto inferiori a n lg(n) quando la matrice di input è parzialmente ordinata, offrendo allo stesso tempo le prestazioni di un mergesort tradizionale quando la matrice di input viene ordinata in modo casuale. Se la matrice di input è quasi ordinata, l'implementazione richiede circa n confronti. I requisiti di archiviazione temporanea variano da una piccola costante per matrici di input quasi ordinate a riferimenti a oggetti n/2 per matrici di input ordinate in modo casuale.

L'implementazione sfrutta l'ordine crescente e decrescente nella matrice di input e può sfruttare l'ordine crescente e decrescente in parti diverse della stessa matrice di input. È particolarmente adatto per unire due o più matrici ordinate: è sufficiente concatenare le matrici e ordinare la matrice risultante.

L'implementazione è stata adattata dall'ordinamento dell'elenco di Tim Peters per Python ( TimSort). Usa tecniche del "ordinamento ottimistico e della complessità dell'informazione ottimistica" di Peter McIlroy, in Proceedings of the Fourth Annual ACM-SIAM Sym on Discrete Algorithms, pp 467-474, gennaio 1993.

Documentazione java per java.util.Arrays.sort(T[], int, int, java.util.Comparator<? super T>).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

Sort(Byte[], Int32, Int32)

Ordina l'intervallo specificato della matrice in ordine 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

Parametri

a
Byte[]

matrice da ordinare

fromIndex
Int32

indice del primo elemento, inclusivo, da ordinare

toIndex
Int32

indice dell'ultimo elemento, esclusivo, da ordinare

Attributi

Eccezioni

se start > end.

se start o end > array.length.

Commenti

Ordina l'intervallo specificato della matrice in ordine crescente. L'intervallo da ordinare si estende dall'indice fromIndex, inclusivo, all'indice toIndex, esclusivo. Se fromIndex == toIndex, l'intervallo da ordinare è vuoto.

Documentazione java per java.util.Arrays.sort(byte[], int, int).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

Sort(Single[], Int32, Int32)

Ordina l'intervallo specificato della matrice in ordine 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

Parametri

a
Single[]

matrice da ordinare

fromIndex
Int32

indice del primo elemento, inclusivo, da ordinare

toIndex
Int32

indice dell'ultimo elemento, esclusivo, da ordinare

Attributi

Eccezioni

se start > end.

se start o end > array.length.

Commenti

Ordina l'intervallo specificato della matrice in ordine crescente. L'intervallo da ordinare si estende dall'indice fromIndex, inclusivo, all'indice toIndex, esclusivo. Se fromIndex == toIndex, l'intervallo da ordinare è vuoto.

La < relazione non fornisce un ordine totale su tutti i valori float: -0.0f == 0.0f è true e un Float.NaN valore confronta né minore di, maggiore, né uguale a qualsiasi valore, anche se stesso. Questo metodo usa l'ordine totale imposto dal metodo Float#compareTo: -0.0f viene considerato minore di valore 0.0f e viene considerato maggiore di qualsiasi altro valore e Float.NaN tutti i Float.NaN valori vengono considerati uguali.

Documentazione java per java.util.Arrays.sort(float[], int, int).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Vedi anche

Si applica a

Sort(Int64[], Int32, Int32)

Ordina l'intervallo specificato della matrice in ordine 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

Parametri

a
Int64[]

matrice da ordinare

fromIndex
Int32

indice del primo elemento, inclusivo, da ordinare

toIndex
Int32

indice dell'ultimo elemento, esclusivo, da ordinare

Attributi

Eccezioni

se start > end.

se start o end > array.length.

Commenti

Ordina l'intervallo specificato della matrice in ordine crescente. L'intervallo da ordinare si estende dall'indice fromIndex, inclusivo, all'indice toIndex, esclusivo. Se fromIndex == toIndex, l'intervallo da ordinare è vuoto.

Documentazione java per java.util.Arrays.sort(long[], int, int).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

Sort(Int32[], Int32, Int32)

Ordina l'intervallo specificato della matrice in ordine 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

Parametri

a
Int32[]

matrice da ordinare

fromIndex
Int32

indice del primo elemento, inclusivo, da ordinare

toIndex
Int32

indice dell'ultimo elemento, esclusivo, da ordinare

Attributi

Eccezioni

se start > end.

se start o end > array.length.

Commenti

Ordina l'intervallo specificato della matrice in ordine crescente. L'intervallo da ordinare si estende dall'indice fromIndex, inclusivo, all'indice toIndex, esclusivo. Se fromIndex == toIndex, l'intervallo da ordinare è vuoto.

Documentazione java per java.util.Arrays.sort(int[], int, int).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

Sort(Int16[], Int32, Int32)

Ordina l'intervallo specificato della matrice in ordine 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

Parametri

a
Int16[]

matrice da ordinare

fromIndex
Int32

indice del primo elemento, inclusivo, da ordinare

toIndex
Int32

indice dell'ultimo elemento, esclusivo, da ordinare

Attributi

Eccezioni

se start > end.

se start o end > array.length.

Commenti

Ordina l'intervallo specificato della matrice in ordine crescente. L'intervallo da ordinare si estende dall'indice fromIndex, inclusivo, all'indice toIndex, esclusivo. Se fromIndex == toIndex, l'intervallo da ordinare è vuoto.

Documentazione java per java.util.Arrays.sort(short[], int, int).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

Sort(Double[], Int32, Int32)

Ordina l'intervallo specificato della matrice in ordine 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

Parametri

a
Double[]

matrice da ordinare

fromIndex
Int32

indice del primo elemento, inclusivo, da ordinare

toIndex
Int32

indice dell'ultimo elemento, esclusivo, da ordinare

Attributi

Eccezioni

se start > end.

se start o end > array.length.

Commenti

Ordina l'intervallo specificato della matrice in ordine crescente. L'intervallo da ordinare si estende dall'indice fromIndex, inclusivo, all'indice toIndex, esclusivo. Se fromIndex == toIndex, l'intervallo da ordinare è vuoto.

La < relazione non fornisce un ordine totale su tutti i valori double: -0.0d == 0.0d è true e un Double.NaN valore confronta né minore di, maggiore di, né uguale a qualsiasi valore, anche se stesso. Questo metodo usa l'ordine totale imposto dal metodo Double#compareTo: -0.0d viene considerato minore di valore 0.0d e viene considerato maggiore di qualsiasi altro valore e Double.NaN tutti i Double.NaN valori vengono considerati uguali.

Documentazione java per java.util.Arrays.sort(double[], int, int).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Vedi anche

Si applica a

Sort(Char[], Int32, Int32)

Ordina l'intervallo specificato della matrice in ordine 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

Parametri

a
Char[]

matrice da ordinare

fromIndex
Int32

indice del primo elemento, inclusivo, da ordinare

toIndex
Int32

indice dell'ultimo elemento, esclusivo, da ordinare

Attributi

Eccezioni

se start > end.

se start o end > array.length.

Commenti

Ordina l'intervallo specificato della matrice in ordine crescente. L'intervallo da ordinare si estende dall'indice fromIndex, inclusivo, all'indice toIndex, esclusivo. Se fromIndex == toIndex, l'intervallo da ordinare è vuoto.

Documentazione java per java.util.Arrays.sort(char[], int, int).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

Sort(Object[], Int32, Int32)

Ordina l'intervallo specificato della matrice di oggetti specificata in ordine crescente, in base all'ordinamento naturale confrontabile dei relativi elementi.

[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

Parametri

a
Object[]

matrice da ordinare

fromIndex
Int32

indice del primo elemento (inclusivo) da ordinare

toIndex
Int32

indice dell'ultimo elemento (esclusivo) da ordinare

Attributi

Eccezioni

se un elemento non implementa Comparableo se compareTo genera un'eccezione per qualsiasi coppia di elementi.

se start > end.

se start o end > array.length.

Commenti

Ordina l'intervallo specificato della matrice di oggetti specificata in ordine crescente, in base all'ordinamento naturale confrontabile dei relativi elementi. L'intervallo da ordinare si estende dall'indice fromIndex, inclusivo, all'indice toIndex, esclusivo. Se fromIndex==toIndex, l'intervallo da ordinare è vuoto. Tutti gli elementi in questo intervallo devono implementare l'interfaccia Comparable . Inoltre, tutti gli elementi di questo intervallo devono essere reciprocamente confrontabili , e1.compareTo(e2) ovvero non devono generare un per ClassCastException gli elementi e1 e e2 nella matrice.

Questo ordinamento è garantito che sia stabile: gli elementi uguali non verranno riordinati in seguito all'ordinamento.

Nota di implementazione: questa implementazione è un mergesort stabile, adattivo e iterativo che richiede confronti molto inferiori a n lg(n) quando la matrice di input è parzialmente ordinata, offrendo allo stesso tempo le prestazioni di un mergesort tradizionale quando la matrice di input viene ordinata in modo casuale. Se la matrice di input è quasi ordinata, l'implementazione richiede circa n confronti. I requisiti di archiviazione temporanea variano da una piccola costante per matrici di input quasi ordinate a riferimenti a oggetti n/2 per matrici di input ordinate in modo casuale.

L'implementazione sfrutta l'ordine crescente e decrescente nella matrice di input e può sfruttare l'ordine crescente e decrescente in parti diverse della stessa matrice di input. È particolarmente adatto per unire due o più matrici ordinate: è sufficiente concatenare le matrici e ordinare la matrice risultante.

L'implementazione è stata adattata dall'ordinamento dell'elenco di Tim Peters per Python ( TimSort). Usa tecniche del "ordinamento ottimistico e della complessità dell'informazione ottimistica" di Peter McIlroy, in Proceedings of the Fourth Annual ACM-SIAM Sym on Discrete Algorithms, pp 467-474, gennaio 1993.

Documentazione java per java.util.Arrays.sort(java.lang.Object[], int, int).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

Sort(Single[])

Ordina la matrice specificata in ordine numerico crescente.

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

Parametri

a
Single[]

matrice da ordinare

Attributi

Commenti

Ordina la matrice specificata in ordine numerico crescente.

La < relazione non fornisce un ordine totale su tutti i valori float: -0.0f == 0.0f è true e un Float.NaN valore confronta né minore di, maggiore, né uguale a qualsiasi valore, anche se stesso. Questo metodo usa l'ordine totale imposto dal metodo Float#compareTo: -0.0f viene considerato minore di valore 0.0f e viene considerato maggiore di qualsiasi altro valore e Float.NaN tutti i Float.NaN valori vengono considerati uguali.

Documentazione java per java.util.Arrays.sort(float[]).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Vedi anche

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

Si applica a

Sort(Int64[])

Ordina la matrice specificata in ordine numerico crescente.

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

Parametri

a
Int64[]

matrice da ordinare

Attributi

Commenti

Ordina la matrice specificata in ordine numerico crescente.

Documentazione java per java.util.Arrays.sort(long[]).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

Sort(Int32[])

Ordina la matrice specificata in ordine numerico crescente.

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

Parametri

a
Int32[]

matrice da ordinare

Attributi

Commenti

Ordina la matrice specificata in ordine numerico crescente.

Documentazione java per java.util.Arrays.sort(int[]).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

Sort(Int16[])

Ordina la matrice specificata in ordine numerico crescente.

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

Parametri

a
Int16[]

matrice da ordinare

Attributi

Commenti

Ordina la matrice specificata in ordine numerico crescente.

Documentazione java per java.util.Arrays.sort(short[]).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

Sort(Double[])

Ordina la matrice specificata in ordine numerico crescente.

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

Parametri

a
Double[]

matrice da ordinare

Attributi

Commenti

Ordina la matrice specificata in ordine numerico crescente.

La < relazione non fornisce un ordine totale su tutti i valori double: -0.0d == 0.0d è true e un Double.NaN valore confronta né minore di, maggiore di, né uguale a qualsiasi valore, anche se stesso. Questo metodo usa l'ordine totale imposto dal metodo Double#compareTo: -0.0d viene considerato minore di valore 0.0d e viene considerato maggiore di qualsiasi altro valore e Double.NaN tutti i Double.NaN valori vengono considerati uguali.

Documentazione java per java.util.Arrays.sort(double[]).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Vedi anche

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

Si applica a

Sort(Char[])

Ordina la matrice specificata in ordine numerico crescente.

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

Parametri

a
Char[]

matrice da ordinare

Attributi

Commenti

Ordina la matrice specificata in ordine numerico crescente.

Documentazione java per java.util.Arrays.sort(char[]).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

Sort(Byte[])

Ordina la matrice specificata in ordine numerico crescente.

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

Parametri

a
Byte[]

matrice da ordinare

Attributi

Commenti

Ordina la matrice specificata in ordine numerico crescente.

Documentazione java per java.util.Arrays.sort(byte[]).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

Sort(Object[])

Ordina la matrice di oggetti specificata in ordine crescente, in base all'ordinamento naturale confrontabile dei relativi elementi.

[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

Parametri

a
Object[]

matrice da ordinare

Attributi

Eccezioni

se un elemento non implementa Comparableo se compareTo genera un'eccezione per qualsiasi coppia di elementi.

Commenti

Ordina la matrice di oggetti specificata in ordine crescente, in base all'ordinamento naturale confrontabile dei relativi elementi. Tutti gli elementi nella matrice devono implementare l'interfaccia Comparable . Inoltre, tutti gli elementi della matrice devono essere reciprocamente confrontabili , e1.compareTo(e2) ovvero non devono generare un per ClassCastException gli elementi e1 e e2 nella matrice.

Questo ordinamento è garantito che sia stabile: gli elementi uguali non verranno riordinati in seguito all'ordinamento.

Nota di implementazione: questa implementazione è un mergesort stabile, adattivo e iterativo che richiede confronti molto inferiori a n lg(n) quando la matrice di input è parzialmente ordinata, offrendo allo stesso tempo le prestazioni di un mergesort tradizionale quando la matrice di input viene ordinata in modo casuale. Se la matrice di input è quasi ordinata, l'implementazione richiede circa n confronti. I requisiti di archiviazione temporanea variano da una piccola costante per matrici di input quasi ordinate a riferimenti a oggetti n/2 per matrici di input ordinate in modo casuale.

L'implementazione sfrutta l'ordine crescente e decrescente nella matrice di input e può sfruttare l'ordine crescente e decrescente in parti diverse della stessa matrice di input. È particolarmente adatto per unire due o più matrici ordinate: è sufficiente concatenare le matrici e ordinare la matrice risultante.

L'implementazione è stata adattata dall'ordinamento dell'elenco di Tim Peters per Python ( TimSort). Usa tecniche del "ordinamento ottimistico e della complessità dell'informazione ottimistica" di Peter McIlroy, in Proceedings of the Fourth Annual ACM-SIAM Sym on Discrete Algorithms, pp 467-474, gennaio 1993.

Documentazione java per java.util.Arrays.sort(java.lang.Object[]).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

Sort(Object[], IComparator)

Ordina la matrice specificata di oggetti in base all'ordine indotto dal comparatore specificato.

[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

Parametri

a
Object[]

matrice da ordinare

c
IComparator

confronto per determinare l'ordine della matrice. Un null valore indica che è consigliabile utilizzare l'ordinamento naturale confrontabile degli elementi.

Attributi

Commenti

Ordina la matrice specificata di oggetti in base all'ordine indotto dal comparatore specificato. Tutti gli elementi nella matrice devono essere reciprocamente confrontabili dal confronto specificato, c.compare(e1, e2) ovvero non devono generare un per ClassCastException gli elementi e1 e e2 nella matrice.

Questo ordinamento è garantito che sia stabile: gli elementi uguali non verranno riordinati in seguito all'ordinamento.

Nota di implementazione: questa implementazione è un mergesort stabile, adattivo e iterativo che richiede confronti molto inferiori a n lg(n) quando la matrice di input è parzialmente ordinata, offrendo allo stesso tempo le prestazioni di un mergesort tradizionale quando la matrice di input viene ordinata in modo casuale. Se la matrice di input è quasi ordinata, l'implementazione richiede circa n confronti. I requisiti di archiviazione temporanea variano da una piccola costante per matrici di input quasi ordinate a riferimenti a oggetti n/2 per matrici di input ordinate in modo casuale.

L'implementazione sfrutta l'ordine crescente e decrescente nella matrice di input e può sfruttare l'ordine crescente e decrescente in parti diverse della stessa matrice di input. È particolarmente adatto per unire due o più matrici ordinate: è sufficiente concatenare le matrici e ordinare la matrice risultante.

L'implementazione è stata adattata dall'ordinamento dell'elenco di Tim Peters per Python ( TimSort). Usa tecniche del "ordinamento ottimistico e della complessità dell'informazione ottimistica" di Peter McIlroy, in Proceedings of the Fourth Annual ACM-SIAM Sym on Discrete Algorithms, pp 467-474, gennaio 1993.

Documentazione java per java.util.Arrays.sort(T[], java.util.Comparator<? super T>).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a