Info
この質問は閉じられています。 編集または回答するには再度開いてください。
Random vector non repeated otherwise create new vector
1 回表示 (過去 30 日間)
古いコメントを表示
Hello,
I have number list from 1 to 5. We know there are 120 different permutation for these. I want to write a rule that for my algorithm, I want to create a permutation that does not creaated before. For example,
1 2 3 4 5 first
2 3 4 5 1 second
...
2 3 4 5 1 nth it shouldn't be created. It is already in the second iteration.
So, by this manner creations should end at most 120th trial.
Can you help me solve this? I'm using randperm
Thank you.
2 件のコメント
Guillaume
2019 年 7 月 12 日
randperm doesn't keep track of previously generated permutations, so it's never going to be useful for this.
Why can't you just generate at once the 120 permutations (with perm) and shuffle them if needed?
回答 (2 件)
Brendan Hamm
2019 年 7 月 12 日
p = perms(1:5);
idx = randi([1,size(p,1)]);
selection = p(idx,:)
0 件のコメント
この質問は閉じられています。
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!