How to find all the possible permutations in a given array?
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Manas Ranjan Pattnayak
il 14 Ott 2018
Commentato: Manas Ranjan Pattnayak
il 14 Ott 2018
The following vector is x = [1 ; 2 ; 3 ; 4 ; 8 ];
I want to find all possible permutations of the given vector by taking 5 elements, 4 elements & 3 elements at a time. The 'perms' function only provides the permutations by taking all the elements of the array at a time.
Kindly suggest any predefined function or process to get this.
0 Commenti
Risposta accettata
Bruno Luong
il 14 Ott 2018
x = [1 ; 2 ; 3 ; 4 ; 8 ]
p=arrayfun(@(k) num2cell(nchoosek(x,k),2), 3:length(x), 'unif', 0);
p=cat(1,p{:});
p=cellfun(@(x) num2cell(perms(x),2),p,'unif',0);
p=cat(1,p{:});
p{:}
3 Commenti
Bruno Luong
il 14 Ott 2018
Modificato: Bruno Luong
il 14 Ott 2018
- The first command select subsets of 3,4,5 elements from x.
- The second command put the nested cell in the same level
- The third command find permutations of each subset
- The fourth command is similar than the second one
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Logical in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!