如何在Scheme中使用数组?
特别是,我正在尝试使用memoization实现递归的fibonacci过程。在Scheme中是否存在数组?
如果没有,我该如何实施备忘录?
答案 0 :(得分:5)
Scheme中有数组,但它们被称为vectors。请注意,它们不像其他语言(如Perl和Javascript)或类似命名的C ++那样调整大小;你必须做一个更大的,并复制过时的内容。
如果您想了解更多关于memoization和动态编程的信息,可以阅读免费书籍Concrete Abstractions的第12章。
答案 1 :(得分:1)
这不是一个直接的答案,所以请自由选择downvote等:如果你正在使用PLT而你需要记忆,那么你应该看看Dave Herman的memoize package。此外,您可以从诈骗库中获取memoize功能。