Recursividad
Comprar curso

43. Recursividad


4 comentarios

Inicia sesión para comentar

Comentarios:

  • Angel David Velasco Bonifaz

    Angel David Velasco Bonifaz hace 10 meses

    Esta bien aprender sobre este tema, pero hay una manera de hacerlo mas facil, con las colecciones de Laravel, usando el metodo crossJoin,

    $collection = collect(['a', 'b', 'c']);

    $matrix = $collection->crossJoin(['a', 'b', 'c'], ['a', 'b', 'c']);

    return $matrix->all();

    con esto obtenemos el mismo resultado, cada combinacion.

    • Victor Arana Flores hace 10 meses

      Hola Angel, no lo conocía. Muchas gracias por el aporte

  • Steven Ortiz

    Steven Ortiz hace 2 años

    Route::get('prueba', function () {

        $array1 = ['a', 'b'];

        $array2 = ['a', 'b'];

        $array3 = ['a', 'b'];

        $arrays = [$array1, $array2, $array3];

        $combinaciones = generarCombinaciones($arrays);

        return $combinaciones;

    });

    function  generarCombinaciones($arrays, $indice = 0, $combinacion = [])

    {

        if ($indice == count($arrays)){

            return [$combinacion];

        }

        $resultado= [];

        foreach ($arrays[$indice] as $item){

            $combinacionesTemporal = $combinacion;

            $combinacionesTemporal[] = $item;

           $resultado = array_merge($resultado, generarCombinaciones($arrays, $indice + 1, $combinacionesTemporal));

        }

        return  $resultado;

    }

     

    • Victor Arana Flores hace 2 años

      Gracias Steven

  • Víctor Daniel Dorantes Chay

    Víctor Daniel Dorantes Chay hace 2 años

    Seria bueno que el proyecto este en un repo para poder bajarlo y comparar la información de la mano del curso

  • Víctor Daniel Dorantes Chay

    Víctor Daniel Dorantes Chay hace 2 años

    No dejaste el codigo