实验一-线性表及其应用(i)

实验一-线性表及其应用(i)

ID:23643741

大小:152.00 KB

页数:7页

时间:2018-11-09

实验一-线性表及其应用(i)_第1页
实验一-线性表及其应用(i)_第2页
实验一-线性表及其应用(i)_第3页
实验一-线性表及其应用(i)_第4页
实验一-线性表及其应用(i)_第5页
资源描述:

《实验一-线性表及其应用(i)》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、电子信息工程学院2013级《数据结构》实验报告姓名学号实验项目线性表及其应用(I)实验内容1.实现线性表的顺序存储结构和主要的基本操作,并添加输出显示等辅助函数,在此基础上实现后续两个算法。线性表的抽象数据类型定义参见教材第19页。顺序存储结构的定义参见教材第22页。2.设线性表存放于顺序表A中,其中有n个元素,且递增有序,请设计一算法,将x插入到线性表的适当位置,以保持线性表的有序性。(题集第17页2.11)3.试写一算法,实现顺序表的就地逆置,即利用原表的存储空间将线性表(a1,a2,…,an)逆置为(an,an-1,…,a1)。(题集第18页2.21)算法设计与程序实现:算法分析本次

2、实验的目的是理解和掌握线性表顺序存储结构的用法,要解决两个基本问题一是将元素插入到有序的顺序表中,并保持线性表的有序性;二是实现顺序表的就地逆置。首先需插入元素的顺序表是有序的,故需先将输入的线性表元素进行排序,至于数据排序,我选择的是起泡排序算法,而实现插入元素到顺序表,则是将待插入的元素与已排序的顺序表中的每个元素进行比较进而确定插入位置;实验内容二的就地逆置则仅仅只需用一个for循环将顺序表中对称位置处的元素交换即可。程序设计流程图如下所示:电子信息工程学院2013级《数据结构》实验报告核心程序此程序中用到的自己编写的头文件以在下面给出,而头文件的说明则在主函数中文件包含部分的注释处

3、,核心程序如下:1.主函数如下:#include"stdafx.h"//标准输入输出函数头文件#include"windows.h"//cmd窗口设置函数头文件#include"ADT.h"//数据结构中相关结构体类型定义及相关数据类型定义#include"DataStructure_LinearList.h"//数据结构第二章线性表中相关函数的定义及声明intmain(){system("title数据结构实验实验名称:线性表及其应用(I)");//设置cmd窗口标题system("colorF1");//设置控制台窗口的背景色和前景色system("date/T");//输出当前的日期

4、system("TIME/T");//输出当前的时间inti,DIR;//控制变量intLIST_MAX;//表长电子信息工程学院2013级《数据结构》实验报告ElemTypedata;//待插入元素SqListL;//定义SqList类型变量InitList_Sq(L);//初始化顺序表printf("※1.请输入所需建立的线性表的长度:");scanf_s("%d",&LIST_MAX);printf("※2.请录入数据:");for(i=0;i

5、}printf("※3.请选择数据的排序方式(0:递减,1:递增):");scanf_s("%d",&DIR);if(DIR){BubbleSortList_Sq(L,INCREASE);//将顺序表递增排序printf("※4.数据递增排列:");}else{BubbleSortList_Sq(L,DECREASE);//将顺序表递减排序printf("※4.数据递减排列:");}PrintfList_Sq(L);//打印输出printf("※5.请输入待插入的元素:");scanf_s("%d",&data);InsertSequentList_Sq(L,data);//将数据元素

6、插入到顺序表L中printf("※6.插入元素后的顺序表:");PrintfList_Sq(L);//打印输出InverseList_Sq(L);//将顺序表就地逆置printf("※7.就地逆置后的顺序表:");PrintfList_Sq(L);//打印输出printf("");return0;}2.头文件”ADT.h”的部分程序如下:#ifndefADT_H_#defineADT_H_/*************************************************************常量和数据类型预定义************************

7、************************************//*------函数结果状态代码------*/#defineTRUE1电子信息工程学院2013级《数据结构》实验报告#defineFALSE0#defineOK1#defineERROR0#defineINFEASIBLE-1#defineOVERFLOW-2/*------排序方式状态------*/#defineINCREASE1//递增#d

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。