我试图减少(大部分)多项式公式完成所需的时间,这是非递归的。是否存在一种方法来减少完成任务所需的处理量?
例如,如果我运行代码:
if(distance > sqrt(dx*dx + dy*dy)) { doSomething(); }
这可以更好地实施到:
if(distance*distance > dx*dx + dy*dy) { doSomething(); }
我的问题是,有没有一种标准的方式来了解如何简化这样的事情,有点像如果你有一个公式,你跟随PEMDAS归结为一个数字。我试图简化的等式是:
offset = |distance*(xObj-xCamera)-base*(base-depth)-distance*base| / hypot(distance, base);
//variables are: distance, xObj, xCamera, base, depth;
我知道有几种方法可以改善它,但我想知道我是否能够有条不紊地解决这种问题而不是直觉。