ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript 配列内の値の可能なすべての組み合わせを生成するにはどうすればよいですか?

JavaScript 配列内の値の可能なすべての組み合わせを生成するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-03 17:34:30301ブラウズ

How to Generate All Possible Combinations of Values in JavaScript Arrays?

JavaScript 配列値の組み合わせの検索

JavaScript でよく遭遇する課題は、さまざまな長さの複数の配列にわたって、考えられる値の組み合わせをすべて見つけることです。これは、要素の順序が重要な置換とは異なります。

この問題を解決するには、再帰的アプローチを採用します。

<code class="javascript">function allPossibleCases(arr) {
  if (arr.length === 1) {
    return arr[0];
  } else {
    var result = [];
    var allCasesOfRest = allPossibleCases(arr.slice(1));  // recur with the rest of array
    for (var c in allCasesOfRest) {
      for (var i = 0; i < arr[0].length; i++) {
        result.push(arr[0][i] + allCasesOfRest[c]);
      }
    }
    return result;
  }
}</code>

3 つの配列を使用した例を考えます。

<code class="javascript">var allArrays = [['a', 'b'], ['c'], ['d', 'e', 'f']];</code>

allPossibleCases(allArrays) を呼び出すと次の出力が得られます:

["acd", "bcd", "azd", "bzd", "ace", "bce", "aze", "bze", "acf", "bcf", "azf", "bzf"]

このメソッドは、入力配列のすべての要素を効果的に組み合わせて、可能なすべての組み合わせを生成し、元のクエリで提示された要件を満たします。

以上がJavaScript 配列内の値の可能なすべての組み合わせを生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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