Mit C# und Linq wie würde ich die Liste < ....> mit der größten Größe/Anzahl zurückgeben?Rückgabeliste mit maximaler Zählung mit Linq
Antwort
Es klingt, als ob Sie n-Listen haben, und Sie möchten mit dem größten Zählwert die eine einzelne aus.
Try this:
List<int> ints1 = new List<int> { 10, 20, 30 };
List<int> ints2 = new List<int> { 1, 2, 3, 4 };
List<int> ints3 = new List<int> { 100, 200 };
var listWithMost = (new List<List<int>> { ints1, ints2, ints3 })
.OrderByDescending(x => x.Count())
.Take(1);
Sie haben nun die Liste mit der größten Anzahl an Elementen. Betrachten Sie das Szenario, in dem es 2+ Listen mit der gleichen Anzahl von Elementen gibt.
Vielen Dank !! eine ziemlich umfassende Lösung :) –
Es ist wahrscheinlich besser, '.First()' als '.Take (1)' zu verwenden, da dann die Liste statt einer Liste mit einem Element, das die Liste enthält, tatsächlich zurückgegeben wird. – recursive
int[] numbers = new int[] { 1, 54, 3, 4, 8, 7, 6 };
var largest = numbers.OrderByDescending(i => i).Take(4).ToList();
foreach (var i in largest)
{
Console.WriteLine(i);
}
ersetzen i => i
mit einer Funktion "größte Größe/count" definieren.
Ich nehme an, dass Sie eine Auflistung von Listen haben, die lists
genannt wird, und Sie die Liste in dieser Auflistung zurückgeben möchten, die die meisten Elemente enthält. Wenn ja, versuchen Sie dies:
var listWithLargestCount = lists.OrderByDescending(list => list.Count()).First();
Alternativ, wenn dies LINQ to Objects, und Sie haben eine Menge von Listen, die Sie wünschen könnte dies versuchen, eine bessere Leistung zu erhalten, indem die O Vermeidung sort (n log n):
int maxCount = lists.Max(list => list.Count());
var listWithLargestCount = lists.First(list => list.Count() == maxCount);
danke Mark! Ich mag deine Lösung. Danke für das Factoring in der Sortierzeit :) das wird sehr nützlich sein ... –
- 1. LINQ: GroupBy mit maximaler Zählung in jeder Gruppe
- 2. Linq mit Gruppe durch Zählung
- 3. laufende Zählung auf einer Säule mit Linq
- 4. Gruppe durch und Zählung Linq mit
- 5. Zurückgeben einer Zählung mit linq-to-sql
- 6. sizeToFit mit maximaler Breite
- 7. Rückgabeliste mit den Werten an ungeraden Positionen
- 8. Inkrementelle Medianberechnung mit maximaler Speichereffizienz
- 9. XSLT-Transformation mit Zählung
- 10. Über wcf Rest Rückgabeliste
- 11. Rückgabeliste von async/await-Methode
- 12. Globale paarweise Sequenzausrichtung mit maximaler Lückenlänge 3
- 13. Contenteditable Div mit maximaler Länge und jquery
- 14. Div mit erzwungener maximaler Breite, wenn möglich
- 15. Initiiere die ArrayList mit maximaler Größe
- 16. Matplotlib Plot Balkendiagramm mit maximaler Länge
- 17. Regex für Dezimalstellen mit maximaler Länge
- 18. Maximaler Wert aus einer Liste mit Listen?
- 19. Finding Conditional Subvector mit maximaler Länge
- 20. Responsive iframe mit maximaler Breite und Höhe
- 21. Ersetzen einer Zeichenkette mit Zählung
- 22. Probleme mit Inversion-Zählung Algorithmus
- 23. Linq GroupJoin mit DefaultIfEmpty
- 24. Linq Join mit Count
- 25. Java, mehrzeiliger Tooltip mit fester maximaler Breite, mit HTML-Tag
- 26. maximaler Rekursionstiefehler?
- 27. Linq to SQL - Rückgabe einer Zählung aus zwei Tabellen
- 28. C# web api Rückgabeliste der Liste Objekte
- 29. Wie man eine einfache Zählung in Linq durchführt?
- 30. Gruppieren mit mit LINQ
Uhm, zählen was? Könnten Sie weiter erklären, z.B. mit Beispiel für Eingabe und Ausgabe. –