/*求1個矩陣中最大的二維矩陣
1。 單就這一題來說,首先方法就是遍歷 */
#include
using
namespace
std;
int a[5]=,,,
};int m=3
;int n=5
;void max_matrix(void
) }
}cout
<<"
矩陣是"
<"
"<1]
<1][s]<<"
"<1][s+1]<}int main(void
)
/*還有1種情況,給定1個m*n的矩陣,讓你求這個最大的子矩陣的和是多少,不再是2維矩陣了
假設矩陣是
a11 a12 a13 .... a1n
a21 a22 a23 .... a2n..
.am1 am2 am3 .... amn
其中有ari ari+1 ari+2 ... arj
ar+1i .....
aki aki+1 ......... akj
是和最大的子矩陣,即有(ari + ar+1i + ar+2i +...+ aki)+(ari+1 + ar+1i+1 + ... + aki+1)+(...)和是最大的,我們把每一列的和都看成1個數
用a[i],a[i+1],,,,a[j]來表示,那麼就是a[i]+a[i+1]+...+a[j]是最大的,就變成求這個陣列中連續的值的最大和問題,因為在a[1],a[2],,,a[i]..a[j]...a[n]中a[i]+..+a[j]是最大的
做法就是,第r行到第k行,我們把每一列相加,看成是1個陣列,然後求這個陣列的連續和最大值,那麼求出的就是第r到k行的,第i到第j列就是這個小矩陣的最大自矩陣和了 */
#include
using
namespace
std;
int a[5]=,,,
};int m=3
;int n=5
;int max_array(int*array)
int max_sum=-65535
;
for(i=0;i)
if(c[i]>max_sum)
max_sum=c[i];
delete c;
return
max_sum;
}int
max_matrix()
}delete b;
return
max_sum;
}int main(void
)
求乙個矩陣中最大的二維矩陣 元素和最大
35.矩陣 求乙個矩陣中最大的二維矩陣 元素和最大 如 1 2 0 3 4 2 3 4 5 1 1 1 5 3 0 中最大的是 4 55 3 要求 1 寫出演算法 2 分析時間複雜度 3 用c寫出關鍵 遍歷每個二維矩陣,記錄和最大的index。時間複雜度o m n coder lee,2012032...
求乙個矩陣中最大的二維矩陣 元素和最大
求乙個矩陣中最大的二維矩陣 元素和最大 如 1 2 0 3 4 2 3 4 5 1 1 1 5 3 0 中最大的是 4 55 3 要求 1 寫出演算法 2 分析時間複雜度 3 用c寫出關鍵 public class maxsubmatrix int b int result msm.findsumm...
求乙個矩陣中最大的二維矩陣 元素和最大
一,題目 求乙個矩陣中最大的 二維矩陣 元素和最大 如 1 2 0 3 4 2 3 4 5 1 1 1 5 3 0 中最大的是 4 5 5 3要求 1 寫出演算法 2 分析時間複雜度 3 用c 寫出關鍵 二,分析 假設最大子矩陣的結果為從第r行到 k行 從第i列到 j列的子矩陣,如下所示 ari 表...