作业帮 > 综合 > 作业

MATLAB穷举排列组合

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/07/04 22:13:45
MATLAB穷举排列组合
从21个人里面选出三组人,每组七个人,怎么用MATLAB把所有的情况都穷举出来?假设21个人分别是A,B,C...U
% 数据太大,以6个人,分三组为示例:
a = 'A':'F';
for i = combnk(a, 2)'
    t = setdiff(a, i);
    for j = combnk(t, 2)'
        k = setdiff(t, j);
        disp([i' j' k])
    end
end

% 如下是你题目对应的程序
a = 'A':'U';
for i = combnk(a, 7)'
    t = setdiff(a, i);
    for j = combnk(t, 7)'
        k = setdiff(t, j);
        % [i' j' k] 为得到的组合情况
    end
end