快速 exp 中的 SICP 1.2.4 拼写错误?

Posted

技术标签:

【中文标题】快速 exp 中的 SICP 1.2.4 拼写错误?【英文标题】:SICP 1.2.4 typo in fast-exp? 【发布时间】:2018-09-11 05:54:47 【问题描述】:

我正在通过 SICP,我不确定这是书中的错误还是我遗漏了什么。

对于计算fast-exp作者给出了以下规则:

b^n = (b^(b/2))^2 如果 n 是偶数

b^n = b * b^(n - 1) 如果 n 是奇数

但是,当他们展示偶数 n 的实现时,我们有:

((even? n) (square (fast-expt b (/ n 2))))

我认为这是正确的。

我相信

b^n = (b^(b/2))^2 if n is even

应该改为

b^n = (b^(n/2))^2 if n is even.

我很难相信这么老的书竟然有这样的错误。我还试图在网上找到有关此问题的任何讨论,但失败了。不知道这里发生了什么。提前致谢。

link to the mentioned chapter

【问题讨论】:

【参考方案1】:

你是对的,这是一个错字 - 如果 n 是偶数,则公式应该是 (b^(n/2))^2。但已在errata 中更正。

【讨论】:

太棒了!非常感谢!

以上是关于快速 exp 中的 SICP 1.2.4 拼写错误?的主要内容,如果未能解决你的问题,请参考以下文章

检测 JavaScript 代码中的拼写错误

自动更正文本输入中的拼写错误

如何立即纠正R中的拼写错误列表

BigQuery 中的数据中存在轻微的拼写错误

如何避免 django 权限字符串中的拼写错误

Noisy Channel模型纠正单词拼写错误