【发布时间】:2014-07-09 02:41:52
【问题描述】:
我想在 Java 上获取二进制矩阵 NxM 与一个变量的所有可能组合,该变量表示它有多少个 1。
例如:
matrix = 0 0 0 0
0 0 0 0
使用类似的方法运行该方法:
置换(矩阵,3);
result list =
1 1 1 0 1 0 1 1 0 1 1 1 1 0 0 0 1 0 0 0 ...
0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 ...
我尝试通过矩阵数组来实现,但我认为这是个坏主意。一定有更简单的方法。
【问题讨论】:
-
不要将问题解决为矩阵,而是尝试将其建模为包含 NxM 值的单个数组并对其进行置换以获得所有可能的组合。然后你可以将它转换回矩阵格式
-
一个 NxM 矩阵可以映射到一个 NxM 长的数组。所以只需应用此处找到的解决方案:stackoverflow.com/questions/1851134/…
-
那么您需要技术帮助还是需要数学解决方案?只是另一个问题,你想要一个排列还是组合?
-
谢谢你,你说得对!更简单的方法
标签: java matrix permutation