多项式链表的结构和接口均参考严蔚敏老师的(c语言版)《数据结构》。
加法的实现:
假设指针pa,pb分别指向多项式A和B当前进行比较的某个结点,则比较这两个结点的指数项,有下列三种情况:
- 指针pa所指结点的指数值 < 指针pb所指结点的指数值:则应摘取pa指针所指结点插入到“和多项式”链表中去
- 指针pa所指结点的指数值 < 指针pb所指结点的指数值:则应摘取pb指针所指结点插入到“和多项式“链表中去
- 指针pa所指结点的指数值 = 指针pb所指结点的指数值:则两个结点中的系数相加,若和数部位零,pa所指结点的系数值,同时释放pb所指的结点;反之,从多项式链表中删除相应的结点,同时释放pa和pb所指向的结点。
减法的实现:
简单的思路:先把减数多项式的系数一一取相反数,然后调用加法函数即可实现。
乘法的实现:
M (x) = A(
= A(