网站大量收购独家精品文档,联系QQ:2885784924

[工学]数据结构实验含答案ppt.ppt

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 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)

文档评论(0)

ipbohn97 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档