Combinations of a vector with replacement
4 views (last 30 days)
Show older comments
Hello everyone. A = [2 3 4]. I am trying to generate these 2 combinations:
- 22, 23 ,24 ,32 ,33 ,34, 42 ,43 ,44 (order matters so 23 not equal to 32 so nchoosek(A,2) does not work)
- 222, 233, 232, 234, 243, 333, 322, 323, 344, 343 , 324,342, 422, 424, 433 ,434 , 432, 423, 444. perms(A) does not do the job here because it is without replacement.
how can I do these?
0 Comments
Accepted Answer
Bruno Luong
on 13 Nov 2018
Edited: Bruno Luong
on 13 Nov 2018
A = [2 3 4]
[A1,A2] = ndgrid(A);
arrayfun(@(k) polyval([A2(k),A1(k)],10), 1:numel(A1))
[A1,A2,A3] = ndgrid(A);
arrayfun(@(k) polyval([A3(k),A2(k),A1(k)],10), 1:numel(A1))
3 Comments
Bruno Luong
on 15 Nov 2018
Edited: Bruno Luong
on 15 Nov 2018
Keep telling you guys of putting more care on your question.
If you want a space then put a space.[2 2 3] is not 223.
A = [2 3 4]
[A1,A2,A3] = ndgrid(A);
[A3(:),A2(:),A1(:)]
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!