Classificar un array em ordem decrescente em C#

  1. Use o método Array.Sort() e Array.Reverse() para classificar un array em ordem decrescente em C
  2. Use o método OrderByDescending() para classificar un array em ordem decrescente em C

Este artigo apresentará diferentes métodos para classificar un array em ordem decrescente em C#.

Use o método Array.Sort() e Array.Reverse() para classificar un array em ordem decrescente em C

Usaremos os dois métodos Array.sort() e Array.Reverse() coletivamente para classificar un array em ordem decrescente. O método Array.Sort() classifica a matriz em ordem crescente. Iremos inverter a matriz usando o método Array.Reverse() para classificar nossa matriz em ordem decrescente. Existem várias sobrecargas desses métodos. A sintaxe correta para usar esses métodos é a seguinte.

Array.Sort(Array array);

Esta sobrecarga do método Sort() possui apenas um parâmetro. O detalhe de seu parâmetro é o seguinte

Parâmetros Descrição
array obrigatoriedade Esta é a matriz que desejamos classificar.

Esta função classifica a matriz em ordem crescente.

Array.Reverse(Array array);

Esta sobrecarga do método Reverse() possui apenas um parâmetro. O detalhe de seu parâmetro é o seguinte.

Parâmetros Descrição
array obrigatoriedade Esta é a matriz que desejamos reverter.

Esta função inverte o array fornecido.

O programa abaixo mostra como podemos usar os métodos Sort() e Reverse() para classificar um array em ordem decrescente.

using System; 
  
class Sort { 
      public static void Main() 
    { 
        int[] arr = new int[] {2, 10, 5, 8, 4, 11}; 
        Console.WriteLine("Array Before Sorting:\n");
        foreach(int value in arr) 
        { 
            Console.Write(value + " "); 
        } 
        Console.WriteLine("\n");
        Array.Sort(arr); 
        Array.Reverse(arr); 
        Console.WriteLine("Array After Sorting:\n"); 
        foreach(int value in arr) 
        { 
            Console.Write(value + " "); 
        } 
    } 
} 

Resultado:

Array Before Sorting:

2 10 5 8 4 11 

Array After Sorting:

11 10 8 5 4 2 

Use o método OrderByDescending() para classificar un array em ordem decrescente em C

Em C#, também podemos usar o método OrderByDescending() do LINQ para classificar un array em ordem decrescente. Existem várias sobrecargas deste método. A sobrecarga que usaremos tem dois parâmetros. A sintaxe correta para usar esse método é a seguinte.

Array.OrderByDescending(source, keySelector);

Os detalhes de seus parâmetros são os seguintes

Parâmetros Descrição
source É a sequência de valores a serem solicitados.
keySelector É a função de extrair uma chave de um elemento.

Esta função classifica a matriz e retorna um IOrderedEnumerable. Vamos convertê-lo em um array usando o método ToArray().

O programa abaixo mostra como podemos usar o método OrderByDescending() para classificar um array em ordem decrescente.

using System; 
using System.Linq;

class Sort { 
    public static void Main() 
    { 
        int[] arr = new int[] {2, 10, 5, 8, 4, 11}; 
        Console.WriteLine("Array Before Sorting:\n");
        foreach(int value in arr) 
        { 
            Console.Write(value + " "); 
        } 
        Console.WriteLine("\n");
        arr = arr.OrderByDescending(c => c).ToArray();
        Console.WriteLine("Array After Sorting:\n"); 
        foreach(int value in arr) 
        { 
            Console.Write(value + " "); 
        } 
    } 
} 

Resultado:

Array Before Sorting:

2 10 5 8 4 11 

Array After Sorting:

11 10 8 5 4 2

Artigo relacionado - Csharp Array

  • Como remover um elemento de uma array em C#
  • Imprimir Array em C#