《编程原本 》一第3章 可结合运算

本文探讨了可结合二元运算的概念及其应用。通过利用可结合性,文章介绍了一个高效计算二元运算幂的算法,并进一步说明如何通过规范性优化算法。此外,还展示了如何运用该算法在对数时间内计算线性递归,如斐波那契数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第3章 可结合运算

本章讨论可结合的二元运算.可结合性使人可以重组相邻的运算,基于这种重组能力可以得到一个计算二元运算的幂的有效算法.规范性使我们可以用许多程序变换来优化这一算法.我们随后要利用该算法在对数时间里计算各种线性递归,例如计算斐波那契数.

编程原本》提供了有关编程种与众不同的理解。其主旨是,实际的编程也应像其他科学和工程领域样基于坚实的数学基础。本书展示了在实际编程语言(如C++)中实现的算法如何在最般的数学背景中操作。例如,如何定义快速求幂算法,使之能使用任何可交换运算。使用抽象算法将能得到更高效、可靠、安全和经济的软件。 这不是本很容易读的书,它也不是能提升你的编程技能的秘诀和技巧汇编。本书的价值是更根本性的,其终极目标是提升你对编程的洞察力。要想从中大获裨益,你需要从头到尾认真学习:阅读代码,证明引理,完成练习。到结束之时,你将看到如何把这里讨论的演绎方法应用到你的程序中,保证你做出的软件部件能起工作,并表现出它们所应该表现的行为。 书中给出的算法和需求针对某些被操作的类型。有关这些描述的代码(也可以通过Web得到)采用C++的个小子集书写,这样做是为了让所有有经验的程序员都能理解。这个小子集可以看做种特殊语言,是由Sean Parent和Bjarne Stroustrup起设计的。 无论你是位软件开发者,还是其他以编程作为项重要活动的专业人员,或者是名在校的学生,你都会逐渐理解本书的经验丰富的作者多年来直在教授和阐释的道理:数学对于编程是绝好的东西,理论对于实际是绝好的东西。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值