Implémentation du produit cartésien de plusieurs tableaux en JavaScript
Le produit cartésien de plusieurs tableaux comprend toutes les combinaisons possibles d'éléments des tableaux d'entrée. Cette opération est essentielle pour générer toutes les combinaisons ou permutations possibles à partir d'un ensemble de données.
La réponse en 1 ligne (ES2020)
const cartesian = (...a) => a.reduce((a, b) => a.flatMap(d => b.map(e => [d, e].flat())));
Explication
Le produit cartésien est calculé de la manière suivante manière :
Exemple
Pour appliquer le produit cartésien sur des tableaux avec des valeurs, considérons l'exemple suivant :
const output = cartesian([1, 2], [10, 20], [100, 200, 300]);
Le résultat attendu est :
[ [1, 10, 100], [1, 10, 200], [1, 10, 300], [1, 20, 100], [1, 20, 200], [1, 20, 300], [2, 10, 100], [2, 10, 200], [2, 10, 300], [2, 20, 100], [2, 20, 200], [2, 20, 300], ]
Ceci démontre le calcul de toutes les combinaisons possibles d'éléments à partir des tableaux donnés, ce qui donne un produit cartésien complet.
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!