【发布时间】:2023-03-20 05:00:01
【问题描述】:
我正在观看 sicp 讲座,在视频 1b 中,sussman 调用算法 1 迭代。他说方法2是递归的。据我了解,两者都是递归算法。我怎样才能最好地想到方法1?作为迭代递归算法?
https://www.youtube.com/watch?v=dlbMuv-jix8
方法1 - 时间复杂度为o(x),空间为o(1)
(define (+ x y)
(if (= x 0)
y
(+ (-1+ x) (1+ y))))
方法2-时间补码为o(x),空间为o(x)
(define (+ x y)
(if (= x 0)
y
(1+ (+ (-1+ x) y))))
【问题讨论】:
-
这本书非常好,可以在线获取,并且有一个pretty good discussion 说明在 SICP 中实现迭代过程的递归过程意味着什么.您还可以在线查找(合法!)该书的电子书和 pdf 版本。
-
谢谢!讨论链接将要点带回家。我刚刚实现了一个迭代版本的阶乘。
标签: algorithm recursion scheme