Creating all possible combination of 0 and 1 in 2D array
14 次查看(过去 30 天)
显示 更早的评论
Let the size of 2D matrix is m (n rows, m cols).
How can I create all possible combinations of 0 and 1 in this matrix?
0 个评论
回答(2 个)
the cyclist
2019-12-24
编辑:the cyclist
2023-1-10
% Example choice of m and n
n = 2;
m = 3;
allCombos = reshape((dec2bin(0:2^(n*m)-1)-'0')',n,m,[]);
allCombos is a 3-dimensional n*m*X array, where each slice in the 3rd dimension is one of the possible matrices.
Note that if m and n get large, you will quickly run out of memory. Combinatorics is a cruel mistress.
0 个评论
the cyclist
2019-12-25
Did you mean you just want each possible unique row, rather than each possible unique matrix?
justRows = dec2bin(0:2^m-1)-'0'
where m is the number of columns.
If you mean something else, please give more info, because I can't think of any other interpretation of what you mean.
2 个评论
the cyclist
2023-1-10
Is the other answer I posted what you want? It gives each unique possible nxm matrix of 0's and 1's.
(I did a small fix in that code just now.)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Symbolic Math Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!