码迷,mamicode.com
首页 > 其他好文 > 详细

递推函数的迭代形式与递归形式

时间:2015-02-02 00:40:56      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:

有一函数 f() 遵守以下规则: 当 n < 3 时, f(n) = n 当 n >= 3 时, f(n) = f(n - 1) + 2f(n - 2) + 3f(n - 3)

用迭代和递归的形式分别写出 计算 f(n) 的过程。

递归形式:

(define (f n)
  (if (< n 3)
     n
     (+ (f (- n 1))
         (* 2 (f (- n 2)))
         (* 3 (f (- n 3))))))

迭代形式:

(define (f n)
  (if (< n 3)
     n
     (f-it 2 1 0 n)))

(define (f-it first second third count)
  (if (< count 3)
     (+ first second third)
     (f-it first (* 2 second) (* 3 third) (- count 1))))

 

递推函数的迭代形式与递归形式

标签:

原文地址:http://www.cnblogs.com/wuOverflow/p/4266627.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!