当前位置: 代码迷 >> 综合 >> SICP 1.6
  详细解决方案

SICP 1.6

热度:108   发布时间:2023-09-29 12:39:39.0

要求产生时间复杂度为logn的求幂程序
对幂数n分2种情况讨论,当n为偶数或者奇数两种情况讨论,并设置变量a存储迭代的计算结果。

(define (fast-expt b n)(expt-iter b n 1))(define (expt-iter b n a)(cond ((= n 0)a)((even? n)(expt-iter (square b)(/ n 2)a))((odd? n)(expt-iter b(- n 1)(* b a)))))

odd?是否为奇数
even?是否为偶数