


Wie kann ich mithilfe von LINQ effizient eindeutige Elemente in einer Liste finden, die in einer anderen nicht enthalten sind?
Jan 19, 2025 pm 06:42 PMNutzung von LINQ zur Identifizierung einzigartiger Elemente
LINQ (Language Integrated Query) bietet einen optimierten Ansatz zum Abfragen und Bearbeiten von Daten in .NET-Anwendungen. Eine häufige Aufgabe besteht darin, Elemente in einer Sammlung zu identifizieren, die in einer anderen fehlen.
Dieses Beispiel zeigt zwei Listen von Person
-Objekten: peopleList1
und peopleList2
. Ziel ist es, die Personen aus peopleList2
zu extrahieren, die in peopleList1
nicht vorhanden sind.
LINQ-basierte Lösung
Die folgende LINQ-Abfrage erreicht dies:
var result = peopleList2.Where(p => !peopleList1.Any(p2 => p2.ID == p.ID));
Diese Abfrage filtert peopleList2
und schließt alle Person
aus, deren ID
in peopleList1
vorhanden ist.
Alternativer LINQ-Ansatz
Ein alternativer LINQ-Ausdruck ist:
var result = peopleList2.Where(p => peopleList1.All(p2 => p2.ID != p.ID));
Dieser Ansatz identifiziert eindeutige Person
-Objekte in peopleList2
, indem überprüft wird, dass kein Person
in peopleList1
dasselbe ID
aufweist.
Leistungsanalyse
Es ist wichtig zu berücksichtigen, dass beide Methoden eine zeitliche Komplexität von O(nm) aufweisen, wobei n die Größe von peopleList1
und m darstellt * stellt die Größe von peopleList2
dar. Bei umfangreichen Datensätzen kann diese Komplexität zu Leistungsengpässen führen. In solchen Szenarien kann es zur Optimierung erforderlich sein, alternative Algorithmen oder Datenstrukturen wie Hash-Tabellen zu untersuchen.
Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe von LINQ effizient eindeutige Elemente in einer Liste finden, die in einer anderen nicht enthalten sind?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Welche Werte sind von C -Sprachfunktionen zurückgegeben? Was bestimmt den Rückgabewert?

GULC: C -Bibliothek von Grund auf neu gebaut

C Sprachfunktionsformat -Buchstaben -Fall -Konvertierungsschritte

Was sind die Definitionen und Aufrufregeln von C -Sprachfunktionen und was sind die?

eindeutiger Gebrauch und Phrasenfreigabe

Wo ist der Rückgabewert der C -Sprachfunktion im Speicher?

Wie funktioniert die C -Standard -Vorlagenbibliothek (STL)?

Wie benutze ich Algorithmen aus der STL (sortieren, finden, transformieren usw.) effizient?
