All possible Permutations for vector
4 ビュー (過去 30 日間)
古いコメントを表示
Marco Gaetani d'Aragona
2021 年 3 月 19 日
コメント済み: Marco Gaetani d'Aragona
2021 年 3 月 19 日
Hi,
I want to create a permutation starting from a vector. For example:
V=[3 3 5]
I want every possible permutation considering values lower or equal to that of the each column, so that the first column can contain number from 1 to 3, the second from 1 to 3 and the third from 1 to 5, without repetitions. In this case:
1 1 1
2 1 1
3 1 1
1 2 1
2 2 1
3 2 1
1 3 1
2 3 1
3 3 1
1 1 2
2 1 2
3 1 2
....
3 3 5
Any suggestion on how to do that?
Thank you
0 件のコメント
採用された回答
Matt J
2021 年 3 月 19 日
V=[3,3,5];
n=numel(V);
Vc=cellfun(@(x) 1:x, num2cell(V), 'uni',0);
[C{1:n}]=ndgrid(Vc{:});
out=reshape( cat(n+1,C{:}) ,[],n)
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!