How to compute Permutation without repetition?

13 Ansichten (letzte 30 Tage)
Prasanna Rajbhandari
Prasanna Rajbhandari am 6 Mai 2016
Kommentiert: aweller3 am 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.

Akzeptierte Antwort

Roger Stafford
Roger Stafford am 6 Mai 2016
Bearbeitet: Roger Stafford am 6 Mai 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 Kommentare
Prasanna Rajbhandari
Prasanna Rajbhandari am 6 Mai 2016
Thank you so much. This really helps me. I have 6 sensors and 5 must be chosen with different possible permutations.
John
John am 11 Okt. 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.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Syed Faheemuddin
Syed Faheemuddin am 23 Nov. 2018
Check this function which give all the possible permutations without repetition.

Kategorien

Mehr zu Resizing and Reshaping Matrices finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by