- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]数据结构实验含答案ppt
实验十:哈希查找 实验名称:哈希函数及其操作 实验要求: (1)建立数据元素集合(180,750,600,430,541,900,460)的哈希表,设散列表长是13 ,所用的散列函数是H(key)=key MOD 13 ,冲突的解决方法是线性探查法。 (2)插入一个元素444 (3)查找元素400和900 实验目的:通过实验使学生掌握哈希查找的基本思想和相应的实现算法。 实验 实验一 实验名称:一元多项式的相加 实验题目: 设有两个一元多项式: p(x)=p0+p1x+p2x2+···+pnxn q(x)=q0+q1x+q2x2+···+qmxm 实现两个一元多项式的相加。 实验目的:通过实验使学生掌握链表的最基本和最主要的操作:插入和删除操作。 实现思想 数据元素的类型 typedef struct { float coef; /*系数部分*/ int expn; /*指数部分*/ } ElemType ; 实现思想 链式多项式的抽象数据类型 值 类型为ElemType的n个数据元素 操作集合 PLoy *create_Ploy_LinkList(void) /* 尾插入法创建单链表,链表的头结点head作为返回值 */ void output_Ploy_LinkList(PLoy *L, char ch) /* 输出以L为头结点的单链表中所有结点的值 */ PLoy *add_ploy(PLoy *La, PLoy *Lb) /* 将以La ,Lb为头指针表示的一元多项式相加 */ 算法实现思想 一元多项式的相加 不失一般性,设有两个一元多项式: P(x)=p0+p1x+p2x2+ … +pnxn Q(x)=q0+q1x+q2x2+ … +qmxm (mn) R(x)=P(x)+ Q(x) R(x)= R((p0+q0) ,(p1+q1) ,(p2+q2) , … ,(pm+qm) , … , pn)唯一表示。 算法实现思想 (1) 顺序存储表示 线性表的定义 typedef struct { ElemType a[MAX_SIZE] ; int length ; }Sqlist ; 用顺序表示的相加非常简单。访问第5项可直接访问:L.a[4].coef , L.a[4].expn (2) 链式存储表示的类型 typedef struct ploy { ElemType data struct Ploy *next ; } Ploy ; PLoy *create_Ploy_LinkList(void) /* 尾插入法创建单链表,链表的头结点head作为返回值 */ { float coef ; int expn ; PLoy *head, *p, *q; head=p=(PLoy *)malloc(sizeof(PLoy)); p-next=NULL; /* 创建单链表的表头结点head */ while (1) { printf(\n请输入一元多项式的系数(0.0表示结束): ) ; scanf(%f,coef); if (coef==0.0) break ; else { printf(\n请输入一元多项式的指数: ) ; scanf(%d,expn); q=(PLoy *)malloc(sizeof(PLoy)); q-data.coef=coef ; /* 指数部分赋值 */ q-data.expn=expn ; /* 系数部分赋值 */ q-next=p-next; p-next=q; p=q ; /* 钩链,新创建的结点总是作为最后一个结点 */ } } return(head); } void output_Ploy_LinkList(PLoy *L, char ch) /* 输出以L为头结点的单链表中所有结点的值 */ { PLoy *p; p=L-next; /* 使p指向第一个结点 */ if (p==NULL) printf(\n此多项式为空!!\n\n) ; else { printf(\n%c(x)=,ch) ; while (p!=NULL)
您可能关注的文档
- [工学]数字电子技术 第三章 逻辑门电路.ppt
- [工学]数字电子技术习题答案.pdf
- [工学]数字电子技术基础 第五章.ppt
- [工学]数字电子技术基础课件第2章 逻辑代数基础.ppt
- [工学]数字电子技术检测题及答案.doc
- [工学]数字电子技术第1章.ppt
- [工学]数字电子技术2.ppt
- [工学]数字电路 第6章-6.ppt
- [工学]数字电子技术第7章 半导体存储器.ppt
- [工学]数字电路与系统设计第六章-4.ppt
- 建银国际证券-港股熊牛切换走向深化:新质生产力助力打开港股长期上升空间.pdf
- 国金证券-创业板50择时跟踪:2月进一步提升创业板50看涨比例.pdf
- 信用|关注存单和城投下沉的机会.pdf
- 政策半月观:三大方向进一步受重视.pdf
- 固定收益专题报告:建筑行业信用风险及投资价值全梳理.pdf
- AI行业跟踪报告第58期:华勤技术,AI云、端全线卡位,全面受益于AI落地.pdf
- 高频选股因子:大单因子表现继续反弹,AI增强组合持续回撤.pdf
- 投资策略研究*专题报告:科技引领“中国资产”价值重估进度加快.pdf
- 电子行业:高阶智驾加速普及,催动硬件快速放量.pdf
- 浙商证券-北汽蓝谷-600733-北汽蓝谷深度报告:联袂小马打造无人出租,携手华为进军全民智驾.pdf
文档评论(0)