- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实 验 报 告
实验名称
线性表及多项式的运算
指导教师
邹志强
实验类型
验证
实验学时
2+2
实验时间
2016.9.16
一、实验目的和要求
1.掌握线性表的两种基本存储结构及其应用场合:顺序存储和链接存储。
2.掌握顺序表和链表的各种基本操作算法。
3.理解线性表应用于多项式的实现算法。
二、实验环境(实验设备)
Dev-C++
三、实验原理及内容
内容:
1.参照程序2.1~程序2.7,编写程序,完成顺序表的初始化、查找、插入、删除、输出、撤销等操作。
2.已知代表头节点的单链表的类型定义,参照程序2.8~程序2.14,编写程序,完成带表头节点的单链表的初始化、查找、插入、删除、输出、撤销等操作。
3.以第2题所示带表头节点的单链表为例,编写程序实现单链表的逆置操作(原单链表为(a0,a1,...an-1),逆置后为(an-1,an-2,...,a0),要求不引入新的存储空间。)
4.以第2题所示带表头节点的单链表为存储结构,编写程序实现将单链表排序成为有序单链表的操作。
5.已知带表头节点一元多项式的类型定义,编写程序实现一元多项式的创建、输出、撤销以及两个一元多项式相加和相乘的操作。
实 验 报 告
三、实验过程及代码等
1.顺序表的基本运算
顺序表的类型定义:
typedef struct
{
int n;
int maxLength;
int *element;
}SeqList;
顺序表的初始化:
typedef int Status;
Status Init(SeqList *L,int mSize)
{
L-maxLength=mSize;
L-n=0;
L-element=(int*)malloc(sizeof(Status)*mSize);
if(!L-element) // 判断顺序表是否申请成功
return ERROR;
return OK;
}
顺序表的查找
Status Find(SeqList L,int i,int *x)
{
if(i0||iL.n-1) //越界判断
return ERROR;
*x=L.element[i];
return OK;
}
顺序表的插入:
Status Insert(SeqList *L,int i,int x)
{
int j;
if(i-1||iL-n-1)
return ERROR;
if(L-n==L-maxLength)
return ERROR;
for(j=L-n-1;ji;j--)
L-element[j+1]=L-element[j];
L-element[i+1]=x;
L-n++;
return OK;
}
顺序表的删除:
Status Delete(SeqList *L,int i)
{
int j;
if (i0||iL-n-1)
return ERROR;
if(!L-n)
return ERROR;
for(j=i+1;jL-n;j++)
L-element[j-1]=L-element[j];
L-n--;
return OK;
}
顺序表的输出:
Status Output(SeqList L)//输出
{
int i;
if(!L.n)
return ERROR;
for(i=0;iL.n;i++)
printf(%d ,L.element[i]);
return OK;
}
顺序表的析构:
void Destroy(SeqList *L)
{
L-n=0;
L-maxLength=0;
free(L-element);
}
用主函数进行测试:
#include stdio.h
#include stdlib.h
#define ERROR 0
#define OK 1
int main()
{
int i;
SeqList list;
Init(list,10);
for(i=0;i10;i++)
Insert(list,i-1,i);
Output(list);
printf(\n);
Delete(list,0);
Output(list);
Destroy(list);
}
调用结果:
实 验 报 告
带表头节点单链表的基本运算
单链表的类型定义(struct.h):
typedef struct Node
{
int element; //结点的数据域
struct Node *link; //结点的指针域
}Node;
typedef struct
{
stru
您可能关注的文档
- 关于-项目工程质量评比通知.doc
- 湖南省2016年工程测量员初级考试试题(卷).doc
- 湖南省2018对口招生英语试题(卷).doc
- 湖南省2018下半年安全员资格试题(卷).doc
- 湖南省2018年届高三六校联考试题(卷)理科综合能力物理部分(word,含答案解析).doc
- 机井、机井房施工组织设计方案.doc
- 计算机组装和维修教(学)案.doc
- 江苏省2017上半年管理和基础:土地使用权转让管理考试试题(卷).doc
- 江苏省2017土地估价师:土地监察的过程、形式和方法考试试题(卷).doc
- 假玉镯的制作方法与判断方法.doc
- 养老评估师中级行为面试题库及案例分析.docx
- 面试培训督导时考察其课程理解能力的题目.docx
- 税务专员面试中关于增值税政策的常见问题解答.docx
- 2025宁波市医疗保障局局属事业单位宁波市医疗保障基金管理中心招聘事业编制工作人员1人备考试题附答案.docx
- 2025咸宁市汉口银行咸宁嘉鱼支行招聘笔试历年题库附答案解析.docx
- 2025北京人才发展战略研究院招录笔试备考题库附答案.docx
- 2025四川成都市龙泉驿区青台山中学校秋季教师招聘22人笔试试题附答案解析.docx
- 2025台州市银龄讲学计划教师招募13人笔试参考试题附答案解析.docx
- 2025中国铁建公开招聘42人笔试题库附答案.docx
- 2025中智咨询研究院社会招聘笔试参考题库附答案.docx
最近下载
- 汉堡男孩课件.ppt VIP
- 减压孔板自动计算.xls VIP
- 美术绘画工具介绍课件.pptx VIP
- 高考数学解答题(新高考)数列求和(裂项相消法)(典型例题+题型归类练)(解析版).pdf VIP
- 装饰设计公司经营管理制度.docx VIP
- IPC-7352_2023 Generic Guideline for Land Pattern Design连接盘图形设计通用指南.pdf VIP
- 新公司法下国有企业治理结构创新研究.docx VIP
- 电影预算示例表格(300万左右).doc VIP
- 中学生心理健康诊断测验(MHT).docx VIP
- 国家综合性消防救援队伍知识试卷及答案.doc VIP
原创力文档


文档评论(0)