首页 > 试题广场 > 对任何非零偶数n ,总可以找到奇数m 和正整数k
[问答题]
对任何非零偶数n ,总可以找到奇数m 和正整数k ,使得n=2mk 。为了求出两个n 阶矩阵的乘积,可以把一个n 阶矩阵分成m×m 个子矩阵,每个子矩阵有2k×2k 个元素。当需要求 2 k ×2 k 的子矩阵的积时,使用 Strassen 算法(不必写出)。设计一个传统方法与 Strassen 算法相结合的矩阵相乘算法,对任何偶数n ,都可以求出两个n 阶矩阵的乘积,并分析算法的计算时间复杂性。
将n阶矩阵分块为mxm 的矩阵。用传统方法求两个m阶矩阵的乘积需要计算0(m³)次2个2x2矩阵的乘积。用Strassen 矩阵乘法计算两个2x2矩阵的乘积需要的计算时间为 0(7的k次幂),因此算法的计算时间为O(7的k次幂*m³)。
发表于 2022-11-22 15:39:57 回复(0)