LINQ を使用して配列サブセットの関係を効率的に検証する
プログラミングでは、配列が別の配列のサブセットであるかどうかを判断する必要があることがよくあります。これはデータの処理と分析において非常に重要です。この記事では、配列のサブセットの関係を効率的にチェックするための LINQ ベースの方法について説明します。
2 つの配列の例を考えてみましょう:
<code>List<double> t1 = new List<double> { 1, 3, 5 }; List<double> t2 = new List<double> { 1, 5 };</code>
私たちの目標は、t2 が t1 のサブセットであるかどうかを判断することです。強力な LINQ 拡張メソッドを活用すると、Except()
メソッドと Any()
メソッドを使用してこの条件を効率的に検証できます。
Except()
メソッドは、最初のコレクションには存在するが 2 番目のコレクションには存在しない要素を含む新しいコレクションを返します。したがって、t2.Except(t1) の結果が空セットであるかどうかをチェックすることで、t2 のすべての要素が t1 に含まれるかどうかを判断できます。
以下のコードに示すように、論理演算子を使用して結果を否定し、t2 が t1 のサブセットであるかどうかを判断します。
<code>bool isSubset = !t2.Except(t1).Any();</code>
示された例では、isSubset
は true
として評価され、t2 のすべての要素が t1 にも存在するため、t2 が確かに t1 のサブセットであることが確認されます。
以上がLINQ を使用すると、ある配列は別の配列のサブセットになりますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。