ホームページ > バックエンド開発 > C++ > .NET で、あるリストに別のリストのすべての要素が含まれているかどうかを効率的に確認するにはどうすればよいですか?

.NET で、あるリストに別のリストのすべての要素が含まれているかどうかを効率的に確認するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2025-01-01 07:02:11
オリジナル
180 人が閲覧しました

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

リストの包含をチェックするための .NET のアプローチ

当面のタスクは、あるリストに別のリストに存在するすべての要素が含まれているかどうかを確認することです。 .NET では、この機能はバージョン 3.5 以降に組み込まれています。

.NET 実装

.NET 3.5 以降では、次のコードを利用してこの封じ込めを実現できます。 check:

public static class LinqExtras // Or whatever
{
    public static bool ContainsAllItems<T>(this IEnumerable<T> a, IEnumerable<T> b)
    {
        return !b.Except(a).Any();
    }
}
ログイン後にコピー

この簡潔なコードは、Except メソッドを利用して、b に存在しない要素を特定します。で。結果を ! で反転することで、a に b のすべての要素が含まれているかどうかを効果的に確認できます。

従来のアプローチ

コーディング規約の観点からは、次に示すようにジェネリック メソッドを定義する方が一般的です。クラス自体は汎用ではなく、提供されたコードです。さらに、List の要件は次のとおりです。 IEnumerable まで緩和できます。

結論

.NET 3.5 以降の組み込み機能を使用すると、要素間の包含をチェックする便利で効率的な方法が得られます。リスト。提供されたコードは、LINQ を効果的に利用してこのチェックを実行し、一般的なコーディング慣行に準拠しています。

以上が.NET で、あるリストに別のリストのすべての要素が含まれているかどうかを効率的に確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート