- 1、本文档共140页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构课件zw2.ppt
while(q1!=A) //A多项式未处理完,将剩余项复制到C {... q-coef=q1-coef; q-exp=q1-exp; q1=q1-next; } while(q2!=B) //B多项式未处理完,将剩余项复制到C {...} q-next=ptr; //ptr是C多项式的头指针 return(ptr); }//POLYADD ADT Polynomial { 数据对象:D={ ai | ai ∈TermSet, i=1,2,...,m, m≥0 TermSet 中的每个元素包含一个 表示系数的实数和表示指数的整数 } 数据关系:R1={ ai-1 ,ai |ai-1 ,ai∈D, 且ai-1中的指数值<ai中的指数值,i=2,...,n } 抽象数据类型一元多项式的定义如下: 其存储也可以用改进的带头结点的单链表 CreatPolyn ( P, m ) 操作结果:输入 m 项的系数和指数, 建立一元多项式 P。 DestroyPolyn ( P ) 初始条件:一元多项式 P 已存在。 操作结果:销毁一元多项式 P。 PrintPolyn ( P ) 初始条件:一元多项式 P 已存在。 操作结果:打印输出一元多项式 P。 基本操作: PolynLength( P ) 初始条件:一元多项式 P 已存在。 操作结果:返回一元多项式 P 中的项数。 AddPolyn ( Pa, Pb ) 初始条件:一元多项式 Pa 和 Pb 已存在。 操作结果:完成多项式相加运算,即: Pa = Pa+Pb,并销毁一元多项式 Pb。 SubtractPolyn ( Pa, Pb ) 初始条件:一元多项式 Pa 和 Pb 已存在。 操作结果:完成多项式相减运算,即: Pa = Pa-Pb,并销毁一元多项式 Pb。 … … } ADT Polynomial 定义 typedef struct { // 项的表示 float coef; // 系数 int expn; // 指数 } term, ElemType; typedef OrderedLinkList polynomial; // 用带表头结点的有序链表表示多项式 注意:一元多项式应该是一个有序表 表示一元多项式的应该是有序链表。有序链表的基本操作定义与线性表有两处不同,一是LocateElem的职能不同,二是增加按有序关系进行插入操作。 基本操作: … … … … LocateElem( L, e, q, int(*compare)(ElemType,ElemType) ) 初始条件:有序表L已存在。 操作结果:若有序表L中存在与e满足compare( )取值为0的元素,则q指示L中第一个值为e的元素的位置,并返回函数值TRUE;否则q指示第一个大于e的元素的前驱的位置,并返回函数值FALSE。 Compare是一个有序判定函数 ( 12, 23, 34, 45, 56, 67, 78, 89, 98, 45 ) 例如: 若 x = 45, 则 q 指向 若 x = 88, 则 q 指向 表示值为 88 的元素应插入在该指针所指结点之后。 void CreatPolyn ( polynomail P, int m ) { // 输入m项的系数和指数,建立表示一元多项式的有序链表P ElemType e; InitList (P); h=GetHead(p); e.coef = 0.0; e.expn = -1; SetCurElem (h, e); // 设置头结点的数据元素 for ( i=1; i=m; ++i ) { // 依次输入 m 个非零项 scanf (e.coef, e.expn); if (!LocateElem ( P, e, q, (*cmp)()) ) { if (MakeNode (s,e)) InsFirst ( q, s ); } } } // CreatPolyn 注意: 1.输入次序不限; 2.指数相同的项只能输入一次 -1 A 7 0 3 1
您可能关注的文档
- 数字电路与逻辑设计chapter1.ppt
- 数字电路与逻辑设计第四章答案.ppt
- 数字电路与逻辑设计课后题答案.ppt
- 数字电路及系统设计ch8.ppt
- 数字电路和逻辑设计基础第3章.ppt
- 数字电路基础课件-总复习.ppt
- 数字电路基础课件-数字教案(第1章).ppt
- 数字电路基础课件-数字教案(第3章).ppt
- 数字电路基础课件-数字教案(第4章).ppt
- 数字电路基础课件-数字教案(第6章).ppt
- krpano标签动作语言基本语法.pdf
- 参考疗法级纸liture paper 1 slsesotho litting 1.pdf
- 这给出期望期待案例.pdf
- 池塘动物级书由ned jensen撰写angela kamstra-level点读版pond animals.pdf
- 天文计算天空望远镜sky amp telescope.pdf
- 学院财务会计fi14fico interview questions set 14FICO面试问题集.pdf
- 嗨名字姓氏i at成绩剑桥国际青少hx g5connect101.pdf
- 中英对照版带时间轴季s04e07.pdf
- 邀纸显示动态范围管理降低功率改善环境对比度文稿.pdf
- 哈佛公开课幸福.pdf
最近下载
- 消防工程质量监理质量评估报告.docx VIP
- JTT 1516-2024 公路工程脚手架与支架施工安全技术规程.docx VIP
- 咨询服务流程与方法.docx VIP
- 乳制品的生产企业应急预案终稿.pdf
- 北师大版七年级数学下学期期中易错精选50题(解析版)2022-2023学年七年级数学下册重难点专题提优训练(北师大版).docx VIP
- 2023-2024年暨南大学352口腔综合考研真题.pdf VIP
- 110千伏及以下配电网规划技术指导原则(2024年).doc VIP
- 药品常用知识(共18张PPT).pptx VIP
- 医疗质量管理课件.pptx VIP
- 管理学原理配套教材电子课件(完整版).pptx
文档评论(0)