霍纳规则中的算法思想
在《算法导论》第二章的思考题中,描述了利用霍纳规则计算多项式的方法。以前自己在写程序的时候都是傻傻的简单粗暴地直接上了,看到这个算法的时候眼前一亮,就多看了一些,果然要比直接计算要效率高很多。为了防止自己以后忘了这个高效的算法,在此记录一下。
简介
据百度百科介绍,霍纳规则用来简化朴素多项式的求值,在中国叫秦九韶算法。霍纳规则是一种将一元n次多项式的求值问题转化为n个一次式的算法。其大大简化了计算过程,即使在现代,利用计算机解决多项式的求值问题时,霍纳规则依然是最优的算法规则。
直接迭代计算多项式
既然是最优的算法规则,我们可以根据它的计算过程来分析为何它会简化原来的计算过程。一般多项式的表达式如下:
P(n)=∑k=0nakxk=a0+x(a1+x(a2+...+x(an−1+<

本文介绍了霍纳规则,一种用于简化多项式求值的算法,也称为秦九韶算法。相比直接迭代计算,霍纳规则通过减少乘法次数提高计算效率,将n次多项式的计算复杂度从θ(n^2)降低到θ(n)。作者强调了算法思想在编程中的重要性,鼓励在解决问题时深入思考。

2019

被折叠的 条评论
为什么被折叠?



