《数据结构一元多项式的相加.ppt》由会员分享,可在线阅读,更多相关《数据结构一元多项式的相加.ppt(9页珍藏版)》请在三一办公上搜索。
1、2.4 线性表的应用举例 一元多项式的表示及相加一元多项式的表示:,可用线性表P表示,但对S(x)这样的多项式浪费空间,用数据域含两个数据项的线性表表示,其存储结构可以用顺序存储结构,也可以用单链表,单链表的结点定义,一元多项式相加,typedef struct node int coef,exp;struct node*next;JD;,设p,q分别指向A,B中某一结点,p,q初值是第一结点,比较p-exp与q-exp,p-exp exp:p结点是结果多项式中的一 项,p后移,q不动,p-exp q-exp:q结点是结果多项式中的一 项,将q插在p之前,q后移,p不动,p-exp=q-exp
2、:系数相加,0:从A表中删去p所指结点 释放p,q,p,q后移,0:修改p系数域,释放q,p,q后移,运算规则,Ch2_7.c,算法描述,void add_poly(JD*pa,JD*pb)JD*p,*q,*u,*pre;int x;p=pa-next;q=pb-next;pre=pa;while(p!=NULL),p=pre-next;u=q;q=q-next;free(u);else u=q-next;q-next=p;pre-next=q;pre=q;q=u;if(q!=NULL)pre-next=q;free(pb);,#include#include const SIZE=10;void main()int arrSIZE;int i;for(i=8;i=5;i-)arri+1=arri;arri=x;for(i=0;iSIZE;i+)coutarrit;coutendl;,作业:2.4 2.5 2.8 2.14,重点:线性表的顺序存储;线性表的链式存储;顺序表的插入、删除 单链表的插入、删除难点:双向链表的系列操作 线性表的应用。,