当少数字符总是在一起时所有字符的排列

时间:2014-04-06 13:29:18

标签: algorithm matlab combinations permutation

我试图获取字符串中所有字符的排列,让我们说“KIRAN'”。我可以用:

烫发(' KIRAN')

这将返回字符串中所有字符的排列,其中factorial(5)= 120。现在,我正在寻找,当字符' IRA'时,字符串的排列。总是在一起。

答案是factorial(3)= 6.

我想写一个模块,它返回所有字符的排列,其中' IRA'总是在一起。

知道如何在Matlab中以编程方式获取它吗?

由于

1 个答案:

答案 0 :(得分:2)

x={'K','IRA','N'}
%one permutation per row
y=x(perms(1:numel(x)))
%concatinate rows
y=arrayfun(@(x)[y{x,:}],1:size(y,1),'UniformOutput',false)