ホームページ >バックエンド開発 >C++ >LINQ は、ある配列が別の配列のサブセットであるかどうかをどのように判断できますか?

LINQ は、ある配列が別の配列のサブセットであるかどうかをどのように判断できますか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-20 05:46:41466ブラウズ

How Can LINQ Determine if One Array is a Subset of Another?

LINQ を使用して配列サブセット間の関係を決定します

配列またはリストを扱う場合、ある配列が別の配列のサブセットであるかどうかを確認することが必要になることがよくあります。この文脈では、「サブセット」とは、別のセットのすべての要素を含むセットを指します。

たとえば、次のシナリオを考えてみましょう:

<code class="language-csharp">List<double> t1 = new List<double> { 1, 3, 5 };
List<double> t2 = new List<double> { 1, 5 };</code>

t2 が t1 のサブセットであるかどうかを判断する必要があります。このために、C# の LINQ (統合言語クエリ) の機能を利用できます。

LINQ は、コレクションに対して集合操作を実行するためのシンプルかつ簡潔な方法を提供します。これらの操作の 1 つは、別のコレクションにも存在する要素を除外する Except メソッドです。

t2 が t1 のサブセットであるかどうかを確認するには、次のように Except メソッドを使用できます。

<code class="language-csharp">bool isSubset = !t2.Except(t1).Any();</code>
コードは次のように機能します:

  1. メソッドは、t1 に存在しない t2 の要素のみを含む新しいシーケンスを作成するために使用されます。 Except
  2. 次に、
  3. メソッドがこの結果のシーケンスに適用され、要素が存在するかどうかがチェックされます。 Any
  4. 演算子は、! の結果を否定するために使用されます。これは、結果のシーケンスが空の場合 (つまり、要素が存在せず、t2 が t1 のサブセットであることを示す)、Any を意味します。が返されます。 true

以上がLINQ は、ある配列が別の配列のサブセットであるかどうかをどのように判断できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。