如何使用Python实现给定的多项式求值算法
多项式求值算法Python实现
伪代码中文说明
输入参数:
- p:存储多项式系数的数组,
p[i]对应多项式中x^i项的系数- n:多项式的最高次数
- a:代入多项式求值的自变量取值
输出:多项式在x=a处的计算结果p(a)
算法逻辑:初始化结果为0,遍历从0到n的所有次数项,仅当对应项系数不为0时计算该项值并累加到结果中,最终返回累加结果。
Python实现代码
完全对应上述伪代码逻辑的实现如下:
def evaluate(p, n, a): value = 0.0 # 遍历从0到n的所有次数项 for i in range(n + 1): # 仅系数非0时计算,减少不必要的运算 if p[i] != 0.0: value += p[i] * (a ** i) return value
使用示例
以多项式p(x) = 3x² + 2x + 1为例,计算其在x=2处的值:
# 多项式系数数组,对应x^0到x^2项的系数 p = [1, 2, 3] # 最高次数为2 n = 2 # 代入值为2 a = 2 print(evaluate(p, n, a)) # 运行输出:17.0
内容的提问来源于stack exchange,提问作者Govind
相关产品推荐
相关产品推荐

