码迷,mamicode.com
首页 > 编程语言 > 详细

矩阵乘法的Strassen算法

时间:2015-09-18 18:31:52      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:

伪代码

  1. Strassen (A, B)
  2. n = A.rows
  3. let C be a n*n matrix
  4. if n == 1
  5.    C11 = A11 * B11
  6. else
  7.        S1 = B12 - B22
  8.        S2=A11+A12;
  9.        S2=A11+A12;
  10.    S3=A21+A22;
  11.    S4=B21-B11;
  12.    S5=A11+A22;
  13.    S6=B11+B22;
  14.    S7=A12-A22;
  15.        S8=B21+B22;
  16.      S9=A11-A21;
  17.    S10=B11+B12;
  18.        P1 = Strassen(A11 * S1)
  19.        P2 = Strassen(S2 * B22)
  20.        P3 = Strassen(S3 * B11)
  21.        P4 = Strassen(A22 * S4)
  22.        P5 = Strassen(S5 * S6)
  23.        P6 = Strassen(S7 * S8)
  24.        P7 = Strassen(S9 * S10)
  25.       
  26.        C11 = P5 + P4 - P2 + P6
  27.        C12 = P1 + P2
  28.        C21 = P3 + P4
  29.        C22 = P5 + P1 - P3 - P4
  30.  
  31. return C

实现

 

矩阵乘法的Strassen算法

标签:

原文地址:http://www.cnblogs.com/fanjinhua/p/4819778.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!