- 13
- 0
- 约7.26千字
- 约 14页
- 2017-04-21 发布于湖北
- 举报
数据结构实验第一次湖北汽车工业学院精要
HUBEI UNIVERSITY OF AUTOMOTIVE TECHNOLOGY
数据结构
实 验 报 告
实验项目线性表及链表的基本操作的编程实现学生姓名学生学号完成日期2014年10月20日指导教师马春江实验成绩评阅日期评阅教师
实验一 线性表及链表的基本操作的编程实现
【实验目的】
线性表基本操作的编程实现
要求:
线性表基本操作的编程实现(2学时,验证型),掌握线性表的建立、遍历、插入、删除等基本操作的编程实现,也可以进一步编程实现查找、逆序、排序等操作,存储结构可以在顺序结构或链表结构中任选,可以完成部分主要功能,也可以用菜单进行管理完成大部分功能。还鼓励学生利用基本操作进行一些更实际的应用型程序设计,进一步熟悉数据结构及算法的程序实现的基本方法。
链表基本操作的编程实现:
要求:
进一步掌握指针变量的用途和程序设计方法; 掌握线性表的结构特征,以及链式存储结构的特点及程序设计方法;掌握构造链表的基本方法;掌握链表的插入、删除和查找等算法的设计方法。
【实验内容】
把线性表的顺序存储和链表存储的数据插入、删除运算其中某项进行程序实现。建议实现键盘输入数据以实现程序的通用性。编写应用程序,实现可以对一个数组进行初始化,并用键盘进行输入;对数组进行遍历,然后输出数组里面的值;实现对数组数据的插入,里面涉及数据的移动,计数;对数组数据的修改,先提供所修改数据所在数组的位置;求表长的长度,返回数组的长度;对数组进行数据的反转,用for循环对数组两边进行数据的交换。
定义链式存储结构;编写建立链表的函数, 编写遍历链表的函数; 编写在链表中进行插入的函数; 编写在链表中进行删除元素的函数; 编写带菜单的测试主函数并上机运行;打印出运行结果,并结合程序运行结果进行分析。
【注意事项】
1.开发语言:使用C++。
2.可以自己增加其他功能。
【顺序表的实验分析、说明过程、部分代码】
对于数组数据的初始化时,要进行传参数,调用函数create(int number);传入参数number,它是记录数组储存多少个数据,然后用for循环从键盘输入数据读取到数组当中,返回success;
returninfo create(int number)
{
count=number;
printf(请依次输入数据(用空格隔开):\n);
for(int i=0;icount;i++)
{
int date;
cindate;
dataarray[i]=date;
}
return success;
}
对于数组的遍历显示而言,先对数组的元素数量是否为空进行判断,是空时返回underflow;不为空时,用for循环对数组进行遍历,输出数组的值,返回success;
returninfo traverse(void) //遍历顺序表中的所有元素
{
if(empty())
return underflow; //空表的处理
printf(顺序表中的全部数据为: \n);
for(int i=0;icount;i++)
{
cout 第i+1数据为:dataarray[i]endl;
}
return success;
}
插入一个元素,先对数组进行判断是否为空,如果为空返回underflow;然后对传入的位置进行判断,是否越界,如果越界则返回range_error;在对数据进行移动的时候要从后面进行移动把前面一个数据移动到后面,然后往前走,继续前面的步骤,到达所在位置数据移动完成以后,对所在位置进行数据的赋值,然后count加一,返回success。
returninfo insert(int position,int item) //插入一个元素
{
if(empty())
return underflow;
if(position=0||positioncount+1)
return range_error;
int i=position-1;
for(int j=count;jposition;j--)
{
dataarray[j]=dataarray[j-1];
}
dataarray[position-1]=item;
count++;
return success;
}
对数组中的数据元素进行删除时,先对数组进行
您可能关注的文档
- 数据结构-PPT第三章-栈和队列精要.ppt
- 数据结构-习题集答案-(C语言版严蔚敏)精要.doc
- 数据挖掘概论精要.ppt
- 数据结构 第二章 线性表精要.pptx
- 数据结构-第1章绪论精要.ppt
- 数据结构-第2章线性表精要.ppt
- 数据结构-第4章 串-1精要.ppt
- 数据结构-第3章栈和队列精要.ppt
- 数据结构820记忆性题总结(By Dawnon)精要.docx
- 数据结构5精要.docx
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 传媒法规与伦理教学课件(共22章)新闻伦理研究综述.pdf VIP
- 汽车行驶记录仪产品使用说明书.PDF VIP
- 2026年成都市美容医疗诊所医美项目安全规范运营可行性研究报告.docx VIP
- ocean培训petrel re快速入门工作流程.pdf VIP
- (四年级奥数班讲义.doc VIP
- 单病种病案数据填报指导手册.doc
- 企业 IPO 筹备方案(最新版,附时间表 + 材料).docx VIP
- 深圳初三数学联考模拟试题.docx VIP
- 高考历史二轮总复习精品课件 第四板块 世界现代史 第十七讲 现代科技的发展与当今世界发展的趋势.ppt VIP
- 2024年菏泽职业学院单招数学考试模拟试题及答案解析.docx VIP
原创力文档

文档评论(0)