Generate efficiently an array of all combinations of a range of elements

1 visualización (últimos 30 días)
I would like generate efficiently an array of all combinations of a range of integeers between 0 and 3. SO that each element of my array will be in the form of [i j k l] where i, j, k and l are from 0 to 3. I want to use build in Matlab functions Instead of looping like the following:
for i=0:3
for j=0:3
for k=0:3
for l=0:3
possibility=[i j k l];
end
end
end
end
  3 comentarios
roger why
roger why el 17 de Mzo. de 2021
the number of all combinations are 256 which is 4 to the power of 4. perms() gives only 24 of them.

Iniciar sesión para comentar.

Respuesta aceptada

Mohammad Sami
Mohammad Sami el 18 de Mzo. de 2021
You can try the following.
[x1,x2,x3,x4] = ndgrid(0:3,0:3,0:3,0:3);
allpossible = [x1(:) x2(:) x3(:) x4(:)];

Más respuestas (0)

Categorías

Más información sobre Multidimensional Arrays en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by