Maison  >  Article  >  interface Web  >  Comment générer toutes les combinaisons possibles de valeurs dans des tableaux JavaScript ?

Comment générer toutes les combinaisons possibles de valeurs dans des tableaux JavaScript ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-03 17:34:30289parcourir

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

Trouver des combinaisons de valeurs de tableaux JavaScript

Un défi souvent rencontré en JavaScript consiste à trouver toutes les combinaisons possibles de valeurs dans plusieurs tableaux de longueurs variables. Ceci est distinct des permutations, où l'ordre des éléments compte.

Pour résoudre ce problème, nous utilisons une approche récursive :

<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>

Considérons un exemple avec trois tableaux :

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

L'appel de allPossibleCases(allArrays) affichera :

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

Cette méthode combine efficacement tous les éléments des tableaux d'entrée pour générer toutes les combinaisons possibles, répondant ainsi à l'exigence posée dans la requête d'origine.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn