一元多项式的表达

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一元多项式的表达与简单运算
学生:刘霖 袁蕊 李兴容
感谢下载
1
1.1设计内容:
感谢下载
2
感谢下载
3
感谢下载
4
1.2 数据结构设计 1.2.1 一元多项式的表示及相加
pnxp0p1x1p2x2pnxn
nm qm (x)q0q1x1q2x2qm xm
那么Rn pnqm 用顺序储存结构表示
+
=
感谢下载
5
但对于形如
sx13x100 2 0x 0 20000
的多项式,上述表示方法是否合适 ?
然而,在通常的应用中,多项 式的次数可能很高变化很大,使得顺 序储存结构的最大长度很难确定。
例这如时上,题我要们用可2以00采01用的单线性表来
表链示表,来而实表现中。只在有单三链个表非中零的元每素,这
个结点有两个数感谢据下载 项(系数项
感谢下载
14
1.4 源程序代码
一元多项式 源程序.doc
感谢下载
15
1.5 运行结果
感谢下载
16
感谢下载
17
谢谢
感谢下载
18

Polyn qa=pa-
>next;
Polyn qb=pb-
感谢下载
qc=(Polyn)malloc (sizeof(struct Polynomial));
switch(compare1(1 q
qc->expn=qa>expn;
qa=qa->next; qb=qb->next; break; } case -1:{ qc->coef=qb>coef; qc->expn=qb>expn;
6
那么
感谢下载
7
1.2 .2 数据结构设计
感谢下载
8
1.2.3 一元多项式的加法运算
算法:
pnode * add(pnode *heada,pnode
*headb)
{pnode *headc,*p,*q,*s,*r;
float x;
p=heada; q=headb;
headc=(pnode
*)malloc(sizeof(pnode));
else if(p-
r->next=s;
>exp<q->exp)
r=s;
{s=(pnode
p=p->next;
*)malloc(sizeof(p 感谢下载 }
10
1.2.4一元多项式的减法运算
算法:
Polyn
AddPolyn(Polyn
Hale Waihona Puke Baidu
pa,Polyn pb){//求
解并建立多项式
a+b,返回其头指
r=headc; 感谢下载
9
s->coef=x;
}
s->exp=p->exp; while(p!=NULL)
r->next=s;
{s=(pnode
r=s;
*)malloc(sizeof(pn
}
ode));
q=q->next;p=p- s->coef=p-
>next;
>coef;
}
s->exp=p->exp;
感谢下载
}//AddPolyn int
compare(Polyn a,Polyn b){ if(a&&b){
if(!b||a>expn>b>expn) return 1;
else if(!a||a>expn<b>expn) return12 -
1.2.5 一元多项式的乘法运算
感谢下载
13
1.3 基本操作函数说明
相关文档
最新文档