通过代码分析,我发现Math.sqrt函数特别是是一个大型双嵌套循环的主要瓶颈,它在我的程序中每运行一次。有没有办法改善其表现?我应该内联某种迭代计算,还是查找基于表的计算?
非常感谢任何帮助!
我不能用平方计算替换它,因为它不是比较。
编辑:代码的相关部分大致如下
else -- not this
elseif -- change to this
if w > h then
push x
elseif h > w then
push y
end
答案 0 :(得分:0)
当您在二维数组中进行迭代时,您可以减少迭代 ~2 。
例如:
如果您的表达式是 i x j ,并且您的数组从0开始是3-3大小,那么您将在循环中计算:
是相同的
0x0 1x0 2x0
0x1 1x1 2x1
0x2 1x2 2x2