电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

数据结构-多项式VIP免费

数据结构-多项式_第1页
数据结构-多项式_第2页
数据结构-多项式_第3页
一.实验目的:理解线性表的基本逻辑结构,完成链表及循环链表的实现通过实验进一步理解线性表的逻辑结构和存储结构,提高使用理论知识指导解决实际问题的能力,熟练掌握链表的实际应用。二.实验内容:题目:一元多项式运算问题描述:设计算法实现一元多项式的简单运算。基本要求:(1)输入并建立多项式;(2)输出多项式;(3)多项式加法(4)多项式减法。测试数据:(1)(2x+5x8-3.1x11)+(7-5x8+11x9)=(-3.1x11+11x9+2x+7)(2)(6x-3-x+4.4x2-1.2x9)-(―6x―3-+5.4x2-x2+7.8x15)=(―7.8x15―1.2x9+12x―3―x)(3)(1+x+x2+x3+x4+x5)+(―x3―x4)=(1+x+x2+x5)(4)(x+x3)+(―x―x3)=0(5)(x+x100)+(x100+x200)=(x+2x100+x200)(6)(x+x2+x3)+0=x+x2+x3三.实验方案(程序设计说明)(一)算法设计思路:1.将两个多项式的系数和指数分别存放在新建的两个链表中;2.其中一个链表A的指针不动,遍历另一个链表B,指数相等时系数相加,删除该数,链表B从头开始,链表A移向下个数据域;3.直到链表B为空或者链表A遍历完成结束。(二)算法流程图:(三)界面设计说明:请输入多项式的长度:开始输入多项式长度N以及系数m,指数nAn=Bn?YNj++系数相加存放在A表i++结束创建链表A,B,链表A从i=0开始循环,链表B从j=0开始i>N?NYi>N?NY请输入第一个多项式的系数、指数:请输入另一个多项式的系数、指数:加法按1,减法按2(四)使用模块及变量的说明实验:m系数;n指数;A、B链表四.实验步骤或程序(经调试后正确的源程序)实验二:(多项式)#include"stdafx.h"#include#include"conio.h"usingnamespacestd;typedefstructlnode{intm;//系数intn;//指数structlnode*next;}LNode,*LinkList;LinkListCreat(LinkListL,inti){LNode*r=NULL,*s;intm,n;for(intj=0;jm=m;s->n=n;if(L==NULL)L=s;elser->next=s;r=s;}if(r!=NULL)r->next==NULL;returnL;}voidCombine(LinkListp,LinkListq,intx,inti,intj){LinkLists=p,a=q;LNode*pre;pre=s;intk=0,r=0;for(;rn==q->n){switch(x){case1:q->m+=s->m;break;case2:q->m-=s->m;break;}q=q->next;if(s==p){p=p->next;free(s);s=p;pre=s;}else{pre->next=s->next;deletes;s=p;pre=s;}}else{pre=s;s=s->next;}k++;if(k>=j)s=p;}/*if(r>=i&&p!=NULL){p->next=q->next;q->next=p;free(p);p=p->next;}*/for(;i>0;i--)//while(a->next!=NULL){cout<m<<"\t"<n<next;}}intmain(){LinkListA=NULL,B=NULL;intx;printf("\n请输入多项式的长度:");scanf_s("%d",&x);printf("\n请输入第一个多项式系数、指数:\n");A=Creat(A,x);printf("\n请输入另一个多项式系数、指数:\n");B=Creat(B,x);intch;printf("\n加法按1,减法按2\t");scanf_s("%d",&ch);Combine(A,B,ch,x,x);_getch();}五.程序运行结果六.实验总结通过完成此次实验,我对链表有了进一步的理解。我体会到编程不仅需要c语言及数据结构知识,还需要对实验目的有清楚的理解、对目的的实现有清晰的思路,只有这样,才有可能更快更好地完成任务。

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

爱的疯狂+ 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部