Heim > Backend-Entwicklung > C++ > Wie kann ich effizient prüfen, ob eine Liste alle Elemente einer anderen in .NET enthält?

Wie kann ich effizient prüfen, ob eine Liste alle Elemente einer anderen in .NET enthält?

Mary-Kate Olsen
Freigeben: 2025-01-01 07:02:11
Original
208 Leute haben es durchsucht

How Can I Efficiently Check if One List Contains All Elements of Another in .NET?

.NETs Ansatz zur Überprüfung der Listeneindämmung

Die vorliegende Aufgabe besteht darin, zu überprüfen, ob eine Liste alle Elemente enthält, die in einer anderen Liste vorhanden sind. In .NET ist diese Funktionalität tatsächlich in den Versionen 3.5 und höher integriert.

Die .NET-Implementierung

Für .NET 3.5 und höher können wir den folgenden Code nutzen, um diese Eindämmung zu erreichen check:

public static class LinqExtras // Or whatever
{
    public static bool ContainsAllItems<T>(this IEnumerable<T> a, IEnumerable<T> b)
    {
        return !b.Except(a).Any();
    }
}
Nach dem Login kopieren

Dieser prägnante Code verwendet die Except-Methode, um alle Elemente in b zu bestimmen, die in a fehlen. Indem wir das Ergebnis mit ! invertieren, bestätigen wir effektiv, ob a alle Elemente von b enthält.

Konventioneller Ansatz

In Bezug auf Codierungskonventionen ist es üblicher, eine generische Methode zu definieren, wie in gezeigt der bereitgestellte Code, anstatt dass die Klasse selbst generisch ist. Darüber hinaus gilt die Anforderung von List kann auf IEnumerable gelockert werden. da wir nur eine Möglichkeit benötigen, über die Elemente zu iterieren.

Fazit

Mit den integrierten Funktionen in .NET 3.5 und höher verfügen Sie über eine bequeme und effiziente Möglichkeit, die Eingrenzung dazwischen zu überprüfen Listen. Der bereitgestellte Code nutzt LINQ effektiv zur Durchführung dieser Prüfung und hält sich an gängige Codierungspraktiken.

Das obige ist der detaillierte Inhalt vonWie kann ich effizient prüfen, ob eine Liste alle Elemente einer anderen in .NET enthält?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage