3

我想一步一步地对数字进行排列,首先决定是否[1 2][2 1],然后如果[2 1]被接受,则决定3ie的位置

[3 2 1] or [2 3 1] or [2 1 3]. 

换句话说,在每一步中,前几位的位置是固定的([2 1]固定的)。如何在每个步骤中生成这样的排列?

4

1 回答 1

2

你可以试试这个:

n = 10; % intended length of result    
result = 1;
for k = 2:n
    id = randi(k);
    result = [result(1:id-1) k result(id:end)];
end
于 2012-10-01T09:45:48.383 回答