欢迎来到天天文库
浏览记录
ID:29979366
大小:19.50 KB
页数:12页
时间:2018-12-25
《一元多项式相加数据结构实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划一元多项式相加数据结构实验报告 一元多项式相加 实验报告 一元多项式的相加 一实验内容 根据所学的数据结构中线性结构的逻辑特性和物理特性及相关算法,应用于求解一个具体的实际问题----------两个多项式相加 二需求分析 1掌握线性结构的逻辑特性和物理特性。 2建立一元多项式。 3将一元多项式输入,并存储在内存中,并按照指数降序排列输出多项式。4能够完成两个多项式的加减运算,并输出结果。 三概要设计 1本程序所用到的抽象数据类型:
2、 typedefOrderedLinkListpolynomial; //用带表头结点的有序链表表示多项式 结点的数据元素类型定义为: typedefstruct{//项的表示 floatcoef;//系数目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 intexpn;//指数term,ElemType; VoidAddPolyn(polynomail&Pa,pol
3、ynomail&Pb) PositionGetHead() PositionN(来自:写论文网:一元多项式相加数据结构实验报告)extPos(LinkListL,Linkp) ElemGetCurElem(Linkp) intcmp(termatermb) StatusSetCurElem(Link&p,ElemTypee) StatusDelFirst(Linkh,Link&q) StatusListEmpty(LinkListL) StatusAppend(LinkList&L,LinkS) FreeNode() 2存储结构 一元多项式的表
4、示在计算机内用链表来实现,同时为了节省存储空间,只存储其中非零的项,链表中的每个节点存放多项式的系数非零项。它包含三个域,分别存放多项式的系数,指数,以及指向下一个项的指针。 创建一元多项式链表,对运算中可能出现的各种情况进行分析,实现一元多项式的相加相减操作。 3模块划分 a)主程序;2)初始化单链表;3)建立单链表;4)相加多项式目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的
5、培训计划 4主程序流程图 四详细设计 根据一元多项式相加的运算规则:对于两个一元多项式中所有指数相同的项,对应系数相加,若其和不为零,则构成“和多项式”中的一项,对 于两个一元多项式中所有指数不相同的项,则分别复抄到“和多项式”中去。核心算法PolyAdd是把分别由pa和pb所指的两个多项式相加,结果为pa所指的多项式。运算规则如下:相加时,首先设两个指针变量qa和qb分别从多项式的首项开始扫描(见图2-5-1),比较qa和qb所指结点指数域的值,可能出现下列三种情况之一: qa->exp大于qb->exp,则qa继续向后扫描。 qa->exp等于qb-
6、>exp,则将其系数相加。若相加结果不为零,将结果放入qa->coef中,并删除qb所指结点,否则同时删除qa和qb所指结点。然后qa、qb继续向后扫描。 qa->exp小于qb->exp,则将qb所指结点插入qa所指结点之前,然后qa、qb继续向后扫描。 扫描过程一直进行到qa或qb有一个为空为止,然后将有剩余结点的链表接在结果表上。所得pa指向的链表即为两个多项式之和。 五源程序代码 #include目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障
7、停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 #include #include #defineNULL0 typedefstructNODE{ floatcoef;//系数 intexpn;//指数 structNODE*next; }NODE; NODE*Creat(intn); voidprint(NODE*head); NODE*AddPolyn(NODE*head1,NODE*head2); NODE*Delfirst(NODE*head,NODE*q); voidInsertBefore
此文档下载收益归作者所有