方案/记忆中的数组

时间:2010-06-01 17:41:53

标签: scheme racket dynamic-programming memoization

如何在Scheme中使用数组?

特别是,我正在尝试使用memoization实现递归的fibonacci过程。在Scheme中是否存在数组?

如果没有,我该如何实施备忘录?

2 个答案:

答案 0 :(得分:5)

Scheme中有数组,但它们被称为vectors。请注意,它们不像其他语言(如Perl和Javascript)或类似命名的C ++那样调整大小;你必须做一个更大的,并复制过时的内容。

如果您想了解更多关于memoization和动态编程的信息,可以阅读免费书籍Concrete Abstractions的第12章。

答案 1 :(得分:1)

这不是一个直接的答案,所以请自由选择downvote等:如果你正在使用PLT而你需要记忆,那么你应该看看Dave Herman的memoize package。此外,您可以从诈骗库中获取memoize功能。