Vorausgesetzt Sie haben eine List<string>
, dass Ihre Elemente enthält:
List<string> myList = PopulateList(...); // fill the list with names
Wenn Sie nur die Liste sortieren möchten, können Sie List.Sort
verwenden:
myList.Sort();
Sie könnten dann durch die Liste gehen mit eine Schleife, um die Duplikate hochzuzählen und festzustellen, welche am häufigsten vorkommen.
Oder Sie können die Elemente gruppieren und sortieren Sie dann die Gruppierung nach Anzahl, absteigend, und nehmen Sie das erste Element.
var mostCommon =
myList.GroupBy(x => x)
.OrderByDescending(g => g.Count())
.First();
Und dann mostCommon.Key
werden Sie das häufigste Element, und mostCommon.Count()
werden Ihnen sagen, wie viele Elemente geben.
Oder, wenn Sie eine Liste der {name, count}
wollte, von Graf bestellt:
var groupedAndSorted =
myList.GroupBy(x => x)
.Select(x => new {Key=x.Key, Count=x.Count()})
.OrderByDescending(x => x.Count)
.ToList();
Haben Sie einen einen aussehen: http://stackoverflow.com/a/9909544/6729295 –
in Ihrem Titel, Sie sind Nach demselben Wert suchen und in der Frage nach der Sortierung fragen –