大整数乘法的5种方法

原文链接: http://www.cnblogs.com/Cwolf9/p/8445341.html
  1. 模拟小学乘法:最简单的乘法竖式手算的累加型;
  2. 分治乘法:最简单的是Karatsuba乘法,一般化以后有Toom-Cook乘法;
  3. 快速傅里叶变换FFT:(为了避免精度问题,可以改用快速数论变换FNTT),时间复杂度O(N lgN lglgN)。具体可参照Schönhage–Strassen algorithm;
  4. 中国剩余定理:把每个数分解到一些互素的模上,然后每个同余方程对应乘起来就行;
  5. Furer’s algorithm:在渐进意义上FNTT还快的算法。不过好像不太实用,本文就不作介绍了。大家可以参考维基百科Fürer’s algorithm

http://blog.csdn.net/sunnyyoona/article/details/43234889

http://blog.csdn.net/u010983881/article/details/77503519

https://mooc.guokr.com/platform/Coursera/

 

 

 

转载于:https://www.cnblogs.com/Cwolf9/p/8445341.html

你可能感兴趣的:(大整数乘法的5种方法)