




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
算法设计与分析 实验报告 - 7 -1、 实验目的(1) 掌握线性表的顺序存储结构和链式存储结构;(2) 掌握线性表插入、删除等基本运算;(3) 掌握线性表的典型运用多项式求和。2、 实验内容编程实现多项式的求和运算:(1) 顺序存储结构的实现例如,已知:f(x)=8x6+5x5-10x4+32x2-x+10,g(x)=7x5+10x4-20x3-10x2+x,求和结果:f(x)+g(x)=8x6+12x5-20x3+22x2+10。顺序表的定义类型如下:#define MAXLEN 100typedef struct int dataMAXLEN;Int last;SeqList;(2) 链式存储结构的实现例如,已知:f(x)=100x100+5x50-30x10 +10,g(x)=150x90-5x50+40x20-20x10+3x,求和结果:f(x)+g(x)= 100x100+150x90+40x20-10x10+3x+10。3、 实验要求(1) 利用C(C+)语言完成程序设计。(2) 上机调试通过实验程序。(3) 输入数据,检验程序运行结果。(4) 给出具体的算法分析,包括时间复杂度和空间复杂度等。(5) 撰写实验报告(把输入实验数据及运行结果用抓图的形式粘贴到实验报告上)。4、 实验步骤与源程序 实验步骤我先从具体的问题中抽象出适当的数学模型,然后设计出相应的算法,对于用顺序存储结构实现多项式求和而言,需要设计3个main函数调用的子函数,分别实现创建多项式,多项式相加和显示多项式;对于用链式存储结构实现多项式求和,也同样需要3个这样的子函数,最后,编写程序,并调试程序,得出实验结果。 源代码顺序存储结构:#include#define MAXLEN 100typedef struct int dataMAXLEN; int last; SeqList;void add_List(SeqList A, SeqList B, SeqList *C) int i;C-last=A.lastB.last? A.last:B.last;for(i=0;ilast;i+) C-datai=A.datai+B.datai;void show_list(SeqList C) int i; for(i=C.last;i=1;i-) if(C.datai) printf(%dx%d)+,C.datai,i); printf(%dx%d)n,C.data0,0); void create_list(SeqList *D) int n,i; printf(tt请输入多项式X的最高次数:);scanf(%d,&n);for(int k=99;k=0;k-) D-datak=0;printf(tt请输入多项式X的次数由大到小输入系数,缺少项用0补齐n); for(i=n;i=0;i-)printf(tt输入X%d项的系数: ,i); scanf(%d,&D-datai); D-last=n;void main() SeqList A,B,C; printf(tt创建多项式f(x):n); create_list(&A); printf(ttf(x)=); show_list(A); printf(tt创建多项式g(x):n); create_list(&B); printf(ttg(x)=); show_list(B); printf(tt多项式f(x)和g(x)的和: ); add_List (A,B,&C); printf(nttf(x)+g(x)=); show_list(C);链式存储结构:#include#include#includetypedef struct linknode float coef; int expn; struct linknode *next; Node;void create_link_list(Node *L) Node *p,*q; int n=1; float x=1; q=L; printf(n请按多项式指数由大到小输入系数和指数:n); printf(提示: 系数和指数间用空格间隔,每组数据之间用回车间隔(系数和指数为0时结束输入)n); while(fabs(x)0.000001 ) scanf(%f %d,&x,&n); if(fabs(x)0.00001) p=(Node *) malloc(sizeof(Node); p-coef=x; p-expn=n; p-next=NULL; q-next=p ; q=p; void show_link_list(Node *L) Node *p; p=L-next;while(p&p-next ) printf(%.1fx%d) + ,p-coef,p-expn); p=p-next; printf(%.1fx%d) ,p-coef,p-expn);printf(n);void mergelist(Node *La,Node *Lb,Node *Lc) / 多项式合并 Node *pa,*pb,*pc; Node *q1,*q2; Lc=La;pc=Lc; pa=La-next;pb=Lb-next; while(pa & pb) if(pa-expn pb-expn) pc-next=pa;pc=pa;pa=pa-next; else if(pa-expn expn) pc-next=pb;pc=pb;pb=pb-next; else if(fabs(pa-coef+pb-coef)next; pb=pb-next; free(q1); free(q2); else q1=pb;pa-coef=pa-coef+pb-coef; pc-next=pa; pc=pa; pa=pa-next; pb=pb-next; free(q1); if(pa) pc-next=pa; else pc-next=pb;void main() Node *LA,*LB,*LC;LA=(Node *)malloc(sizeof(Node); LA-next=NULL;LB=(Node *)malloc(sizeof(Node); LB-next=NULL; LC=LA; create_link_list( LA); printf(f(x) = );show_link_list(LA);create_link_list( LB);printf(g(x) = );show_link_list(LB);mergelist(LA,LB,LC);printf(nf(x)+g(x)= );show_link_list(LC);5、 测试数据与实验结果(可以抓图粘贴)顺序存储结构的实现调试结果如图所示:链式存储结构的实现调试结果如图所示:6、 结果分析与实验体会本次实验是参考了范例程序,经过自己的改写,从而实现要求。先做简单的输出,一步步的再做其它格式的设置。而且,在具体操作中我对顺序存储结构和链式存储结构的优点和缺点有了更深刻的体会,顺序存储结构的算法较为简单,但是在输入的过程中有很大的局限性,必须从大到小依次且连续的输入多项式次数,所以,它只适合最高次数较小的多项式求和,而链式存储结构设计的算法则更灵活
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年宿州高新医院招聘若干人考前自测高频考点模拟试题附答案详解(模拟题)
- 矿物材料低碳冶炼技术-洞察与解读
- 纳米壳层结构吸附设计-洞察与解读
- 版权保护机制创新-第3篇-洞察与解读
- 村与风电协议书5篇
- 2025年4月公众北海市海城区招聘城镇公益性岗位人员8名模拟试卷及答案详解(全优)
- 2025年及未来5年中国深圳市会展行业发展趋势预测及投资战略咨询报告
- 2025年嘉兴海宁市中心医院公开招聘高层次急需卫技人员4人模拟试卷及答案详解(新)
- 2025第六师五家渠市面向校园招聘事业单位工作人员(57人)考前自测高频考点模拟试题及完整答案详解1套
- 2025广东省高校毕业生三支一扶计划招募3000人考前自测高频考点模拟试题及答案详解参考
- 2025房地产中介劳动合同协议书范本
- 教科版科学五年级上册2.1地球的表面教学课件
- 急进性肾小球肾炎患者的护理
- 2025至2030中国克罗恩病药物行业项目调研及市场前景预测评估报告
- 知识分享大讲堂活动方案
- 2026届初三启动仪式校长讲话:初三启航!以信念为舵赴青春与使命之约
- 暖通施工工程方案(3篇)
- 消化内科常见疾病诊疗标准与流程
- XX中小学落实“双减”政策及加强“五项管理”实施方案
- 急性淋巴细胞白血病课件
- 2025-2026学年鲁科版小学劳动技术一年级上册教学计划及进度表
评论
0/150
提交评论