Strassen算法之矩阵乘法

Strassen算法通过分治策略减少矩阵乘法的时间复杂度,从传统的O(n^3)降至O(n^2.807)。该算法将矩阵划分为小块,仅需计算7个子问题来得到最终结果,为大尺寸矩阵运算提供了更高效的解决方案。
摘要由CSDN通过智能技术生成

Strassen算法之矩阵乘法

问题:给定两个n-by-n矩阵A和B,计算C=AB;
分析:如果采用一般方法求解矩阵C,我们根据乘法定义知道C中每个元素都需要O(n)次乘法,总共有n^2个元素,所以时间复杂度是O(n^3)。当n很大时,这个时间是非常久的。那我们有什么快速的方法计算矩阵乘法呢?采用Divide、Conquer and Combine思想,把矩阵A、B、C分别画成4个小矩阵,这样.把每个问题分成8个子问题和4次加法。到此,这是分治策略的方法,时间复杂度也是O(n^3)。但实际上我们不需要计算8个子问题,值需要计算7个矩阵的结果就能表示出来。

(C11C21C12C22) = (a11a21a12a22) (b11b21

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值