gpt4 book ai didi

memoization - "memoize"一词意味着什么?

转载 作者:行者123 更新时间:2023-12-04 22:16:42 28 4
gpt4 key购买 nike

比较术语“memoize”和“cache”并阅读 Wikipedia's memoization entry ,人们是否同意使用术语“memoize”意味着

  • 内存的结果保存在进程的内存中;换句话说,它没有存储在 memcached 中。
  • 一个只“内存”函数,如数学函数,例如斐波那契,而不是可能随时间变化的值,例如网站上的注册用户数量?

  • 如果您正在做上述以外的任何其他事情,那么只是缓存结果?

    最佳答案

    我相信内存一个函数可以让你在本地缓存给定参数集的函数结果。这几乎就像:

    function f(a, b, c) {
    if (a==1 && b==2 && !c) {
    return 5;
    } else if (a==1 && b==3 && !c) {
    return 17.2;
    } /* ... etc ... */

    // some horribly long/complex/expensive calculation
    return result;
    }

    但是最初的巨大“if”块被自动处理并且效率更高,并且随着使用不同参数调用函数而被添加。

    请注意,您只能记住一个确定性且没有副作用的函数。这意味着函数的结果只能依赖于它的输入,并且它在运行时不能改变任何东西。

    简而言之,memoization 是非常特殊情况下的函数本地缓存,因此它是常规缓存的特化。

    关于memoization - "memoize"一词意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3722354/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com