Tris d"une List<List<int>>

Résolu/Fermé
hourra - Modifié le 24 nov. 2022 à 15:25
 Hourra - 25 nov. 2022 à 12:50

Bonjour,

Je me permets de poster ici car j'ai un souci dont je n'arrive pas à me dépatouiller, cela doit être tout simple mais je ne vois pas le souci (je précise que je débute en c#) .

J'ai une liste 2d d'entier que j'initialise comme suit : 

List<List<int>> table = new List<List<int>>();
table.Add({1,5,6,8,9});
table.Add({9,5,10,11,17});
table.Add({7,5,25,23,4});

Mon objectif est de trier la liste par rapport au dernier élément des sous listes. Je fais comme suis : 

table.OrderBy(x => x.Last()).ToList();

J'obtiens une liste comme suit : 

{1,5,6,8,9},
{7,5,25,23,4},
{9,5,10,11,17}

Donc il trie par rapport au premier élément de chaque sous-liste... alors que j'aimerais avoir ceci : 

{7,5,25,23,4},
{1,5,6,8,9},
{9,5,10,11,17}

... donc qu'il la trie par rapport au dernier élément.

Je suis preneur de vos explications sur la raison et comment y remédier, 

Vous en remerciant par avance, cordialement.

A voir également:

2 réponses

NHenry Messages postés 15173 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 21 décembre 2024 350
24 nov. 2022 à 20:35

Avec du Linq ça peut se faire, genre :

ListeFinale=ListeSource.OrderBy(p=>p.Last()).ToList()

0

J'ai trouvé mon erreur, tout bête je ne stockais pas le retour dans un autre tableau en faisant :

table = table.OrderBy(x => x.Last()).ToList();

Le problème est résolu, excellente journée 

0