How to compute Permutation without repetition?
67 views (last 30 days)
Show older comments
Prasanna Rajbhandari
on 6 May 2016
Commented: aweller3
on 26 Nov 2021
We are trying to create a permutation with a,b,c,d,e,f. Taking 5 at a time. We want all the possible permutation without repetition.
0 Comments
Accepted Answer
Roger Stafford
on 6 May 2016
Edited: Roger Stafford
on 6 May 2016
If a, b, c, etc. are different numbers, do this:
v = [a,b,c,d,e,f];
P = perms(v);
P = P(:,1:5);
The matrix P will now contain all possible permutations of five elements selected out of v. There will be 720 rows and 5 columns.
If you had asked for, say, all permutations of five numbers chosen out of a larger number like ten, I would have had to do more work above.
2 Comments
John
on 11 Oct 2017
This answer assumes the result depends on order, i.e. 12345 is different from 21345. If the result is independent of order than use nchoosek(1:6, 5) which produces the six unique combinations
1 2 3 4 5
1 2 3 4 6
1 2 3 5 6
1 2 4 5 6
1 3 4 5 6
2 3 4 5 6
I think selecting 5 out of 6 sensors would be order independent, e.g. 12345 and 21345 are the same selection.
More Answers (1)
See Also
Categories
Find more on Resizing and Reshaping Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!