python - 求多项式的导数

标签 python math

我想知道您如何将多项式解析为函数并返回导数。我将使用什么数据结构或方法来解析多项式?最好不要使用任何库,因为这个问题可能会在技术面试中出现。

polynomial-> of nth degree

def derivative(polynomial):
    return derivative

Example:

f(x)  = 2x^2+3x+1
f'(x) = 4x+3

我不想要解决方案,这不是家庭作业,而是我从哪里开始的提示。

最佳答案

单个变量中的多项式可以简单地表示为包含系数的数组。因此,例如 1 + 5x3 - 29x5 可以表示为 [1, 0, 0, 5, 0, -29]。以这种形式表示的导数很容易计算。

假设 poly 是上面的 python 列表。然后

deriv_poly = [poly[i] * i for i in range(1, len(poly))]

对于稀疏多项式,其他表示相对容易,例如成对列表 (coefficient, exponent) 或字典映射指数到系数。

解析表达式比较复杂,但是使用各种解析框架应该很容易,因为语法比较简单。

关于python - 求多项式的导数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11155367/

相关文章:

python - 如何使用 Mechanize 填写表格?

python - 如何在 Python 中使用名称中的连字符处理 MongoDB 数据库?

python - 为什么它抛出`GeoDjango Postgis 要求不满足在运行迁移时出现错误?

algorithm - 在没有数据库的情况下生成唯一随机数(OTP)?

math - 解决圆圆碰撞

python - python ;异步处理错误我需要一个单独的线程吗?

python - 如何使最后一个 gtk.TreeView 列可调整大小?

iphone - 如何计算两个向量的平均方向

python - 计算三点之间的正弦、余弦和夹角

algorithm - acosf() 的精确矢量化实现