Téléchargé 12 fois
Vote des utilisateurs
1 
0 
Détails
Licence : Freeware
Mise en ligne le 29 juillet 2018
Langue : Français
Référencé dans
Navigation

Produit cartésien d'un tableau de tableaux

Comme le titre l'indique. Donne le produit cartésien d'un tableau de tableaux.
Avatar de rawsrc
Modérateur https://www.developpez.com
Le 08/08/2018 à 18:23
Salut,

j'ai essayé de faire une version utilisant un générateur :
Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function cartesien(array $p) {
    if ($p) {
        if ($last = array_pop($p)) {
            foreach (cartesien($p) as $t) {
                foreach ($last as $v) {
                    yield $t + [count($t) => $v];
                }
            }
        }
    } else {
        yield [];
    }
}

$a = iterator_to_array(cartesien([range(1, 8), range('a', 'd'), range('A', 'B')]));
J'ai pas testé plus que ça, à voir donc

Sinon j'aime bien aussi ta version
Avatar de badaze
Membre émérite https://www.developpez.com
Le 09/08/2018 à 17:02
Ca à l'air de marcher avec le même exemple que j'avais utilisé. Bravo !
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.
Contacter le responsable de la rubrique PHP

Partenaire : Hébergement Web