All possible combination based on 2^n
9 views (last 30 days)
Show older comments
I want to create a matrix containing all possible combination. Example of this is shown below. The size of the matrix depends on the number of variable n and the total of combination should follow the
. The example below is valid for
and, hence, the total number of rows is 8. The value of each element is 0 and 1.


How to create this matrix automatically depending on the number of variable n?

0 Comments
Accepted Answer
More Answers (3)
Dyuman Joshi
on 14 May 2021
y = flipud(dec2bin(0:2^n-1,n))-'0' %method 1
y = dec2bin(2^n-1:-1:0,n)-'0' %method 2
Choose any of the methods you wish, both give the same result.
P.S - There is a similar question in Cody as well.
2 Comments
Bjorn Gustavsson
on 14 May 2021
You could use dec2bin:
allpossibles = dec2bin(0:(2^n-1));
You'll have to extract the indices from the columns but that should be "not hard". There's more than likely many prettier solutions, for example have a look on the file exchange for nextperm (by Jos) and next-combination-permutation (by Matt-Fig).
HTH
0 Comments
See Also
Categories
Find more on Multidimensional Arrays 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!