我需要组合不同长度的n(随机)数组的所有数据。 例如: a = [1 3 2 7 8],b = [2 5 3 9]和c = [5 6],也许我们有d,e,f等.... 我需要所有元素的组合,如: M = {[1 2 5],[1 2 6],[1 5 5],[1 5 6],[1 3 5],[1 3 6] ....}。
答案 0 :(得分:1)
3个阵列的解决方案:
[A,B,C] = meshgrid(a, b, c);
M = [A(:), B(:), C(:)];
n 数组的解决方案迭代短维 n :
a=[1 3 2 7 8];
b=[2 5 3 9];
c=[5 6];
d=[1 3 5];
arrays = { a, b, c, d };
M = a';
for i = 2:length(arrays)
A1 = M;
A2 = arrays{i}';
[i1, i2] = meshgrid(1:length(A1), 1:length(A2));
M = [A1(i1(:), :) A2(i2(:))];
end