ホームページ >バックエンド開発 >C++ >C# 配列内の項目のすべての組み合わせを見つける方法

C# 配列内の項目のすべての組み合わせを見つける方法

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-19 23:28:12804ブラウズ

How to Find All Combinations of Items in a C# Array?

C# 配列要素の組み合わせ検索メソッド

この記事では、C# で配列のすべての要素の組み合わせを見つけるさまざまな方法を検討します。重複が許可されるかどうか、各組み合わせに必要な要素の数、希望する順序など、特定のニーズに応じてさまざまな手法を選択できます。

重複した順列を許可します

要素の重複を許可する配列の順列を見つけるには、GetPermutationsWithRept 関数を使用します。この方法により、各要素をコンポジション内で複数回使用できるようになります。たとえば、長さ 2 {1, 2, 3, 4} の配列の場合、出力は次のようになります:

<code>{1,1} {1,2} {1,3} {1,4}
{2,1} {2,2} {2,3} {2,4}
{3,1} {3,2} {3,3} {3,4}
{4,1} {4,2} {4,3} {4,4}</code>

重複した手配は許可されません

繰り返しが必要ない場合は、GetPermutations 関数を使用します。この方法では、各要素が組み合わせごとに 1 回のみ使用されるように制限されます。同じ配列と長さの場合、出力は次のようになります:

<code>{1,2} {1,3} {1,4} 
{2,1} {2,3} {2,4} 
{3,1} {3,2} {3,4} 
{4,1} {4,2} {4,3} </code>

K 個の重複した組み合わせが許可されます

要素の重複を許可する配列の K 個の組み合わせを見つけるには、GetKCombsWithRept 関数を使用します。このメソッドを使用すると、各要素を組み合わせて複数回使用でき、出力は次のようになります:

<code>{1,1} {1,2} {1,3} {1,4} 
{2,2} {2,3} {2,4} 
{3,3} {3,4} 
{4,4} </code>

重複する K の組み合わせは許可されません

K 個の組み合わせで繰り返しが必要ない場合は、GetKCombs 関数を使用してください。この方法により、組み合わせ内の各要素が 1 回だけ使用されることが保証されます。指定された配列と長さの場合、出力は次のようになります:

<code>{1,2} {1,3} {1,4} 
{2,3} {2,4} 
{3,4} </code>

以上がC# 配列内の項目のすべての組み合わせを見つける方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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