4.3 多项式

  • 『多项式的单向链表表示』 类似 2.2 ADT 多项式,现用链表的存储表示多项式。通常情况下,要存储的多项式为:

A(x)=am1xem1++a0xe0 A(x) = a_{m-1}x^{e_{m-1}} + \cdots + a_0x^{e_0} 用链表存储表示的每个结点可图示为:

例如这两个多项式 a=3x14+2x8+1 a = 3x^{14} + 2x^8 + 1 b=8x143x10+10x6 b = 8x^{14} - 3x^{10} + 10x^6 可以表示为:

4-7

  • 『多项式加法』 为了将两个多项式相加,从 aabb 所指向的结点开始比较两个多项式的各个项。如果这两项的指数相同,那么把它们的系数相加,并生成一个新的结果项,然后移动这两个指针,分别指向多项式 aabb 的下一个结点。如果 aa 的当前项指数小于 bb 的当前项指数,那么生成 bb 的副本项,加入到结果 dd 中,并移动指针指向 bb 的下一项。如果大于,那么对 aa 采取同样的操作。

to be continued...

results matching ""

    No results matching ""