【发布时间】:2013-07-12 22:08:04
【问题描述】:
我想使用 matlab 创建一个矩阵,其中包含数据集 V= 0:46 中大小为 8 的所有可能组合。使用 nchoosek 似乎无法做到这一点。有人可以帮我解决问题吗?谢谢
【问题讨论】:
标签: matlab permutation combinations
我想使用 matlab 创建一个矩阵,其中包含数据集 V= 0:46 中大小为 8 的所有可能组合。使用 nchoosek 似乎无法做到这一点。有人可以帮我解决问题吗?谢谢
【问题讨论】:
标签: matlab permutation combinations
如果您愿意创建一个由 314457495×8 个元素组成的矩阵,您可以创建自己的函数。递归解决方案是
function R = nck(v, k)
if k==1,
R = v(:);
elseif k==numel(v),
R = v(:)';
else
R0 = nck(v(1:end-1),k);
R1 = nck(v(1:end-1),k-1);
R = [R0; R1, v(end)*ones(size(R1,1),1)];
end
R = sortrows(R);
end
【讨论】: