代码改变世界

矩阵元素全为0或1,怎样求出元素全1的极大子矩阵

2016-03-15 14:29  想打架的蜜蜂  阅读(534)  评论(0编辑  收藏  举报
3行5列 与 5行2列 的矩阵,哪个大?

划掉那些包含元素0的行与列,剩下的就是元素全1的极大子矩阵

用数学方法的话,

1、先将每行元素相加(或右乘列阵[1]),凡是结果小于当前列数的行,统统去掉。

2、或将每列元素相加(或左乘行阵[1]),凡是结果小于当前行数的列,统统去掉。

3、或将每行元素相加,计算其与当前列数的差(行差);将每列元素也相加,计算其与当前行数的差(列差);将这些差的绝对值从大到小排列,绝对值最大的行差(列差),对应的行(列)删除;然后重复,直到行差与列差都为0。

3、剩下的,即是极大子矩阵

对了,可以程序编码实现的。