Generate all possible permutations including repeats

13 views (last 30 days)
I am trying to generate all possible combinations of 0,1,2 including repeats.
I have tried:
F = [0,1,2];
perms(F)
That works but it only gives the combinations with no repeats:
2 1 0
2 0 1
1 2 0
1 0 2
0 2 1
0 1 2
Including repeats there should be 27 combinations instead of just 6 without repeats

Accepted Answer

Bruno Luong
Bruno Luong on 25 Oct 2023
Edited: Bruno Luong on 25 Oct 2023
F = [0,1,2];
combinations(F,F,F)
ans = 27×3 table
F F_1 F_2 _ ___ ___ 0 0 0 0 0 1 0 0 2 0 1 0 0 1 1 0 1 2 0 2 0 0 2 1 0 2 2 1 0 0 1 0 1 1 0 2 1 1 0 1 1 1 1 1 2 1 2 0

More Answers (1)

Voss
Voss on 25 Oct 2023
F = [0,1,2];
n_values = numel(F);
n_combos = n_values^n_values;
M = F(1+dec2base(0:n_combos-1,n_values)-'0');
disp(M);
0 0 0 0 0 1 0 0 2 0 1 0 0 1 1 0 1 2 0 2 0 0 2 1 0 2 2 1 0 0 1 0 1 1 0 2 1 1 0 1 1 1 1 1 2 1 2 0 1 2 1 1 2 2 2 0 0 2 0 1 2 0 2 2 1 0 2 1 1 2 1 2 2 2 0 2 2 1 2 2 2

Categories

Find more on MATLAB Coder in Help Center and File Exchange

Products


Release

R2023b

Community Treasure Hunt

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

Start Hunting!