电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

数据结构实验报告(C语言)单链表的基本操作VIP免费

数据结构实验报告(C语言)单链表的基本操作_第1页
1/8
数据结构实验报告(C语言)单链表的基本操作_第2页
2/8
数据结构实验报告(C语言)单链表的基本操作_第3页
3/8
计算机科学与技术系实 验 报 告专业名称计算机科学与技术课程名称数据结构与算法项目名称单链表的基本操作班级学号姓名实验日期格 式 要 求实验报告注意格式规范,要求在word 中编写,文中不要有空行,统一使用A4 页面。页边距:上2.5cm、下 2cm、左 2.5cm、右 2cm。标题:宋体、四号字、加粗、1.5 倍行距。正文:宋体、小四号字、1.2 倍行距。一、实验目的与要求:(一)实验目的1.理解排序算法基本思想。2.掌握在顺序表上各种排序算法的实现。3.对线性表排序算法的时间复杂度进行分析。4.理解顺序表数据结构的特点(优缺点)和适用环境。(二)实验要求1.定义一链表类型,并定义带有头结点的单链表。2.将教材中链表的建立、初始化、插入、删除等函数实现。3.由主函数按照用户要求对各个链表操作访问。4.每次操作之前要有明确的说明,操作后要输出操作结果。5.分析顺序表链表的插入、删除、查找的时间和空间复杂度。二、实验方法:(代码)#include#includetypedef struct Pnode{int coef;int exp;struct Pnode *next;}Polynode;typedef struct node{int data;struct node *next;}LinkList;//多项式链表的生成Polynode *PLcreate(Polynode *H){Polynode *R,*S;int c,e;H=(Polynode *)malloc(sizeof(Polynode));H->exp=-1;H->next=NULL;//建立空多项式单链表R=H;//R 始终指向单链表的尾,便于尾插法建表printf("请输入多项式的系数和指数:");scanf("%d%d",&c,&e);//键入多项式的系数和指数项while(e!=-1)//若e=-1,则掉膘多项式的输入结束{S=(Polynode *)malloc(sizeof(Polynode));S->coef=c;S->exp=e;S->next=NULL;//生成新结点并赋值R->next=S;//在当前表尾做插入R=S;//printf("请继续输入多项式的系数和指数:");scanf("%d%d",&c,&e);}return H;}//两个一元多项式相加Polynode *polyadd(Polynode *A,Polynode *B){Polynode *p,*q,*temp,*pre;int sum;p=A->next;q=B->next;//p 和 q 分别指向 A 和 B 多项式来拿表中的第一个结点pre=A;//pre 指向*p 的前驱结点free(B);//释放多项式 B 的头结点空间while(p!=NULL&&q!=NULL)//当两个多项式均未扫描结束时{if(p->expexp)//若果 P 指向的多子昂是的指数小于 q 的指数,指针 p 后移{pre=p;p=p->next;}else if(p->exp==q->exp)//若指数相等,则相应的系数相加{sum=p->coef+q->coef;if(sum!=0){p->coef=sum;B=...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

数据结构实验报告(C语言)单链表的基本操作

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部