非常经典的例子就是斐波那切数列,初学递归的时候大家可能都接触过他。
例如输入5,他会从从f(5)一直到f(1)或者f(2)直到遇到if,return。但是其中会有很多冗余的代码,比如经过递归已经把f(3)算出来了,但机器并没有保留下来数据,导致再遇到f(3)的时候计算机仍旧会展开成f(2)和f(1)在return回去,这样费了很多力气。
而记忆化搜索百能省下很多力气,比如当你展开f(5)的时候,得出f(3)和f(4),f(3)展开成f(2)和f(1)直接return成了1,f(4)展开成f(3)和f(2)时候,不需要再把f(3)展开了。直接得出答案,不用再一步步算了。省下了计算机时间。