V1
和V2
分别是向量1x20
和1x10
。
如何查找来自V1
的15个元素和来自V2
的3个元素的所有可能组合?
所选元素的顺序并不重要。
答案 0 :(得分:3)
这是一种方式:
% n-choose-k from each vector
A = nchoosek(1:20,15);
B = nchoosek(1:10,3);
% all combinations from the two sets
[X,Y] = ndgrid(1:size(A,1), 1:size(B,1));
C = [A(X(:),:) B(Y(:),:)];
结果包含来自两个向量V1和V2的索引:
>> whos C
Name Size Bytes Class Attributes
C 1860480x18 267909120 double
如果要直接将其应用于实际矢量,请将前两行替换为:
A = nchoosek(V1,15); % V1 is a 1x20 vector
B = nchoosek(V2,3); % V2 is a 1x10 vector