- 6
- 0
- 约1.83万字
- 约 20页
- 2017-08-22 发布于浙江
- 举报
时间复杂度取决于大的整数乘法的大整数除法
时间复杂度取决于大整数乘法的大整数除法
技术领域
本文主要提供一种特殊的分治递归运算的大整数除法(包括整除的商值及整除后取余数)。这种算法主要应用于计算机领域,尤其是加密技术中。
论文背景
当前公开或使用的大整数除法即使采用Knuth的经典名著“The Art of Computer Programming”的第4.3.1节中的猜商值公式来计算,也需要多次试运算,所有这些大整数除法最大的缺点是时间复杂度T(n) = O(n2)这与大整数乘法相比差远了。因此减少试运算的次数,降低时间复杂度时间复杂度时间复杂度时间复杂度T(n) = O(nlog23),如果采用其他更快的大整数乘法,本算法会更快,这就使数值很长的大整数除法的计算速度大幅提高,例如当被除数的长度为4194304个四字节,除数长度为2097152个四字节时,本算法中采用Karatsuba乘法加速时的速度为现有大整数除法速度的30倍左右。
论文内容
本文在这部分将推出一种全新的大整数除法计算理论,并利用该理论构造分治的大整数除法,在分治中充分利用大整数乘法,以达到加速目的。请看下面的推理:
设大整数运算过程中采用h(大于1的整数)进制,
正整数集合:Z={x| x>0并且 [x]=x }
集合1:H= {x| 0≤x<h 并且x为整数}
集合2:H2={x| 1≤x<
原创力文档

文档评论(0)