Matlab:获取序列的所有组合?

时间:2012-12-20 08:56:25

标签: matlab cell sequence combinations

我有一个如下序列:{1,2,3},我希望得到它的所有组合: {{},{1},{2},{3},{1,2},{1,3},{2,3},{1,2,3}} 谢谢。

2 个答案:

答案 0 :(得分:3)

试试这个:http://www.mathworks.com/help/stats/combnk.html。我相信你需要梳子,而不是烫发。

答案 1 :(得分:1)

蛮力:

a  = { 1, 2, 3 };
n  =numel(a);
nn = 2^n;
res = cell(1, nn);
for ii=1:nn,
    res{ii} = a( bitget( ii-1, n:-1:1 ) == 1 );
end