📄 iclass.m
字号:
function C=iclass(A,B,n)
%此程序是用分治算法思想将两个规模为2^k*2^k的矩阵相乘
if n==1
C=A*B;
elseif rem(n,2)==0
C11=iclass(A(1:n/2,1:n/2),B(1:n/2,1:n/2),n/2)...
+iclass(A(1:n/2,n/2+1:end),B(n/2+1:end,1:n/2),n/2);
C12=iclass(A(1:n/2,1:n/2),B(1:n/2,n/2+1:end),n/2)...
+iclass(A(1:n/2,n/2+1:end),B(n/2+1:end,n/2+1:end),n/2);
C21=iclass(A(n/2+1:end,1:n/2),B(1:n/2,1:n/2),n/2)...
+iclass(A(n/2+1:end,n/2+1:end),B(n/2+1:end,1:n/2),n/2);
C22=iclass(A(n/2+1:end,1:n/2),B(1:n/2,n/2+1:end),n/2)...
+iclass(A(n/2+1:end,n/2+1:end),B(n/2+1:end,n/2+1:end),n/2);
C=[C11 C12;C21 C22];
else
error('Error Cycle!')
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -