1 一元稀疏多项式计数器预习报告 姓名:刘茂 学号 222012315220062 一、实验要求 (1)输入并建立多项式; (2)输出多项式,输出形式为整数序列:n,c1,e1,c2,e2……cn,en,其中n 是多项式的项数,ci,ei 分别为第i 项的系数和指数
序列按指数降序排列; (3)多项式a 和b 相加,建立多项式a+b; (4)多项式a 和b 相减,建立多项式a-b
(5)多项式求值; (6)多项式求导; (7)求多项式的乘积
二、测试数据: 1、(2x+5x^8-3
1x^11)+(7-5x^8+11x^9)=(-3
1x^11+11x^9+2x+7); 2、(6x^-3-x+4
4x^2-1
2x^9+1
2x^9)-(-6x^-3+5
4x^2-x^2+7
8x^15 )=(-7
8x^15-1
2x^9+12x^-3-x); 3、(1+x+x^2+x^3+x^4+x^5)+(-x^3-x^4)=(1+x+x^2+x^5); 4、(x+x^3)+(-x-x^3)=0; 5、(x+x^100)+(x^100+x^200)=(x+2x^100+x^200); 6、(x+x^2+x^3)+0=x+x^2+x^3
7、互换上述测试数据中的前后两个多项式
三、思路分析 用带表头结点的单链表存储多项式
本程序要求输入并建立多项式,能够降幂显示出多项式,实现多项式相加相减的计算问题,输出结果
采用链表的方式存储链表,定义结点结构体
运用尾差法建立两条单链表,以单链表polyn p 和polyn h 分别表示两个一元多项式a 和b
为实现处理,设p、q 分别指向单链表polya 和polyb 的当前项,比较p、q结点的指数项
① 若p->expnexpn,则结点p 所指的结点应是“和多项式”中的一项, 2 令指针p 后移
② 若p->expn=q->e