当前位置:   article > 正文

减少系统计算量之我见_减小c程序计算量

减小c程序计算量

由于笔者目前开发的系统中存在大量的计算,所以为了优化系统性能。所以在此列举出一些可以减少计算量的方法。

缓存计算结果

例如:在c = f(a, b)表达中,如果函数f需要进行大量的计算才能获得结果的话,那可以在函数内部将输入和输出保存起来,下次有相同输入的时候直接调用输出函数。

示例代码:

int f(const int a, const int b)
{
    static int oa, ob, oc;
    static bool bFirst = true;

    auto updateRes = [&oa, &ob, &oc, &a, &b]()
    {
        oa = a;
        ob = b;
        oc = a + b;
    };

    if(bFirst)
    {
        bFirst = false;
        updateRes();
    }
    else
    {
        if(a != oa || b != ob)
        {
            updateRes();
        }
    }
    return oc;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26

优点

简单、易实现

缺点

局限性较大。
如果输入中出现了类似数组这种参数的话,该方法将不适用。

其他方法后续完善

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/376055?site
推荐阅读
相关标签
  

闽ICP备14008679号