维基百科有关乘法算法的页面提到了Donald Knuth的有趣文章。基本上,它涉及将傅立叶变换乘法与对数大小的乘法的预计算表进行组合。它以线性时间运行。
本文的行为就像这种算法,某种程度上不算作“真正的”乘法算法。更重要的是,是否可以在偶数O(n lg n)
时间内完成乘法是一个悬而未决的问题!
此算法的哪些细节使它不算作“真实”乘法算法?
我的猜测是:
- 预先计算表格所花费的时间超过了线性时间。另一方面,它仍然可以及时完成,
n lg n
因此看起来仍然令人印象深刻。 - 某种程度上不允许随机访问。但是,为什么其他算法可以使用哈希表和指针之类的东西呢?
- 当您增加机器的字长时,它会以某种方式缩放错误,例如,如果您有一台256位机器在一条指令中执行256位乘法,那么直到您拥有2 ^ 256个以上的元素,该算法才有意义。另一方面,我们在联合发现中担心逆阿克曼因子。
- “有没有线性时间乘法算法?” 问题是用一些功能较弱的机器暗中进行的,但这只能得到提示。
这可能是相关的:en.wikipedia.org/wiki/Transdichotomous_model
—
R. GitHub停止帮助ICE 2014年