c語言 兩個矩陣相乘 2 5 矩陣分塊相乘

2021-10-13 18:15:17 字數 692 閱讀 7446

我們可以用水平線和垂直線把矩陣劃分為一塊一塊的:

劃分後的每個小塊都是乙個矩陣(單個元素也是特殊的矩陣)。矩陣分塊的「神奇」之處在於:兩個分塊矩陣相乘,可以把每個「塊」當乙個矩陣元素,得到像一般矩陣乘法那樣的公式。例如:

根據矩陣相乘「列的觀點」,右邊矩陣

我們再來看看左邊的矩陣

根據矩陣相乘「行的觀點」,左邊矩陣

水平劃分左邊矩陣也只是「複製」「貼上」一般的效應,只要找到

再看一下我們要證明的最終結果:

這裡要注意一下,當我們同時對

至此,我們可以得出結論:要證

好了,矩陣分塊的乘法就是這樣了,願你有所得!

C 兩個矩陣相乘

程式設計求兩個矩陣相乘的結果。輸入第一行是整數m,n,表示第乙個矩陣式m行n列的 然後是乙個m n的矩陣。再下一行的輸入時整數p,q,表示下乙個矩陣p行,q列的 n p 然後就是乙個p行q列的矩陣。要求輸出兩個矩陣相乘的結果矩陣 1 using namespace std const int siz...

C 兩個矩陣相乘

程式設計求兩個矩陣相乘的結果。輸入第一行是整數m,n,表示第乙個矩陣式m行n列的 然後是乙個m n的矩陣。再下一行的輸入時整數p,q,表示下乙個矩陣p行,q列的 n p 然後就是乙個p行q列的矩陣。要求輸出兩個矩陣相乘的結果矩陣 1 using namespace std const int siz...

兩個矩陣相乘

description 給出兩個矩陣,大小分別為m n和n s,計算這兩個矩陣相乘的結果。input 輸入資料有多組,每組的第1行有三個正整數m n和s 1 m,n,s 10 表示有兩個m n和n s大小的矩陣,分別放在m行和n行。所有資料均為整數,用空格分隔。output 對於每組測試資料,輸出它...