Comment faire pour trier la liste > selon liste [0] Numéro ASC / DESC en C #?
Question
Comment doit régler ce problème dans l'ordre ASC?
Je suis List<List<UInt32>>
complète des dossiers de List<UInt32>
et je veux que ces documents soient classés en fonction de la première colonne de chaque enregistrement -. La colonne est UInt32 numéro
Je Liste des:
new List<UInt32>: 32,1,1,1,1,1
new List<UInt32>: 22,2,2,2,2,2
new List<UInt32>: 32,1,1,1,1,1
new List<UInt32>: 1,1,1,1,1
, triez à:
List<UInt32>: 1,1,1,1,1
List<UInt32>: 22,2,2,2,2,2
new List<UInt32>: 32,1,1,1,1,1
new List<UInt32>: 32,1,1,1,1,1
-> Seulement la première question numéro! d'autres ne sont pas importants pour le tri. Je suis lookin pour chose ASC, mais les deux serait fantastique quand je pense que l'algorithme doit être changé, je vais regarder vers le haut:)
Je vous remercie de vos efforts pour vous aider!
@Samuel, Merci, je vais essayer de mettre en œuvre lorsque je tente de changer le type:)
La solution
Près d'un double de:
Comment trier la liste
Quelque chose comme:
var sorted = parent.OrderBy( l => l[0] );
Ou:
parent.Sort( (a,b) => a[0].CompareTo( b[0] ) )
Autres conseils
Alors que la réponse de John travaille, je suggère d'utiliser First()
au lieu d'accéder à l'élément 0 dans la liste. De cette façon, cela fonctionne pour tout IEnumerable<T>
non seulement IList<T>
.
var sorted = list.OrderBy(subList => subList.First());