Dev Faq
0
votes

Tri du tableau par longueur

Je souhaite trier ce tableau par longueur, mais comment vais-je faire cela? J'ai cherché sur le Web pendant un moment, mais je n'ai rien trouvé. Le code est censé trier un tableau donné au hasard par chaque longueur de chaîne dans le tableau de chaînes, mais je ne parviens pas à déclarer comment je veux qu'il trie.

public class Kata
{
  public static string[] SortByLength (string[] array)
  {
    Array.Sort(array);
    return array;
  }
}

c# arrays sorting

1 commentaires

ce que vous voulez, c'est OrderBy < / a>


3 Réponses :


1
votes

Utilisez linq ...

public static string[] SortByLength (string[] array) =>
    array.OrderBy( x => x?.Length ?? 0 ).ToArray();


0 commentaires

2
votes

Eh bien, pour trier le tableau en place , vous devez fournir une règle de tri:

  public static string[] SortByLength (string[] array) {
    //TODO: validate array and its items here; they must be not null

    Array.Sort(array, (x, y) => x.Length.CompareTo(y.Length));

    return array;
  } 

La méthode peut être

  Array.Sort(array, (x, y) => x.Length.CompareTo(y.Length));   


0 commentaires

0
votes

Mec, voici comment cela devrait fonctionner.

Array.Sort(array, StringComparer.InvariantCulture);


1 commentaires

Ne trie pas par longueur



Articles qui pourrait vous intéresser :

Calculer la différence dans l'échelle d'évaluation alphabétique
Ignorer la propriété de l'interface utilisateur Swagger
Comment détruire les éléments dynamiques du panneau dans le script Unity C #
Entity Framework Core 3.1 avec NetTopologySuite.Geometries.Point: SqlException: la valeur fournie n'est pas une instance valide de la géographie du type de données
© 2020 www.devfaq.fr - Licensed under  cc by-sa 3.0  with  attribution required.