1. 首页
  2. 编程语言
  3. C
  4. 分治法求解大整数乘法的分解

分治法求解大整数乘法的分解

上传者: 2018-12-27 05:26:06上传 RAR文件 362KB 热度 75次
模型改进: 可以把X*Y写成另一种形式: X*Y=A*C*2^n+[(A-B)(D-C)+AC+BD]*2^(n/2)+B*D (3) 式(3)看起来比式(1)复杂,但它仅需做3次n/2位整数的乘法:AC,BD和(A-B)(D-C),6次加、减法和2次移位。由此可得:用解递归方程的迭代公式法,不妨设n=2^k: T(n)=3T(n/2)+cn =3(3T(n/4)+cn/2)+cn =9(T(n/8)+ cn/4)+3cn/2+cn =…… =3^k +3^(k-1) *2c+3^(k-2) *4c+……+3c2^(k-1)+c2^k = O(n^log3) 则得到T(n)=O(n^log3)=O(n^1.59)。
用户评论
码姐姐匿名网友 2018-12-27 05:26:06

代码很好,解决了我的问题,但是因为个人的原因不太能理解。

码姐姐匿名网友 2018-12-27 05:26:06

很好。是我想要的。谢谢。

码姐姐匿名网友 2018-12-27 05:26:06

返回值用数组表示的问题

码姐姐匿名网友 2018-12-27 05:26:06

如果长度太长就不得了...所以说算不上好