我正在实施压缩算法。事实上,20 Kib文件花了一秒钟,所以这是不可接受的。我认为这很慢,因为计算结果 我需要有关如何加快速度的建议。我已经有一些提示,比如移位而不是乘法,但我真的想确定哪些更改实际上有帮助,因为程序的复杂性。我也接受有关编译器选项的建议,我听说有一种方法可以让程序做更快的数学计算。
常见的操作是:
pow
(...)math
库编辑:程序没有浮点数
答案 0 :(得分:5)
如何让事情更快的问题不应该在这里向其他人询问,而是在您的环境中向分析器询问。使用分析器确定大部分时间花在哪里,这将提示您需要改进哪些操作,如果您不知道如何操作,请询问具体操作。在不知道原始代码是什么的情况下几乎不可能说出你需要改变什么,并且问题没有提供足够的信息: pow(...)函数:函数的参数是什么,指数是固定的吗?你需要多少精度?你可以改变一些会产生类似结果的函数吗? 大数:大数中的大有多大?在这种情况下,数字是什么?整数?浮点?
答案 1 :(得分:2)
您的问题非常广泛,没有足够的信息可以为您提供具体的建议,我们必须遵循一般的路线图。
什么平台,什么编译器?什么是“大数”?你已经做了什么,你对优化了解多少?pow
对于原生整数来说非常慢答案 2 :(得分:0)
提示: -
1)模2只适用于最后一位
2)功率函数可以在logn时间实现,其中n是功率。 (数学库应该足够快)。也用于快速通电you may check this out
如果无效,只需检查是否存在快速算法。