1 / 11
文档名称:

数据结构实验.doc

格式:doc   页数:11页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据结构实验.doc

上传人:zhangbing32159 2014/12/31 文件大小:0 KB

下载得到文件列表

数据结构实验.doc

文档介绍

文档介绍:北京联合大学
实验报告
课程(项目)名称: 顺序表
学院: 专业:
班级: 成绩:
学号: 姓名:
学号: 姓名:
2014年12月22日
:
(1).掌握线性表的概念. (2).熟练掌握线性表的顺序存储结构.
(3).熟练掌握线性表在顺序存储结构上的运算. (4).了解测试的思想.
:
(1).编写算法实现顺序表中元素的逆置。要求按用户输入的数据建立一个顺序表。在逆置的过程中使用最少的辅助存储单元。测试要求:在空表、长度为奇数和偶数的情况下测试程序运行情况。
(2).己知顺序表中的元素非递减有序排列,编写算法删除顺序表中值相同的多余的元素。测试要求:在空表、有1组相同元素、有2组连续相同元素、有2组以上不连续相同元素的情况下测试程序运行情况。
(3).编写算法,在非递减有序的顺序表中,插入一个给定的元素,插入后该顺序表仍然递增有序。测试要求:在空表、表头、表尾、表中间插入及位置非法的情况下测试程序运行情况。
(4).有两个顺序表A(有m个元素)和B(有n个元素),其元素均按从小到大的升序排列。编写算法,将这两个顺序表合并成一个顺序表C,要求C也是按从小到大的升序排列。测试要求:在A与B均空、A与B一个为空、A与B均不空的情况下测试程序运行情况。


#include<>
#include<>
#include<>
#define MAXSIZE 30
struct SList
{ int Data[MAXSIZE];
int Last;
} SList;

(1).函数名称:初始化
①.名字:InitSList
②.功能:初始化线性表
③.入口参数:L
④.出口参数:L
⑤.N-S图
⑥.源程序清单
/*初始化线性表*/
struct SList InitSList()
{ struct SList L;
=-1;
return L;
}
/*初始化线性表1*/
struct SList InitSList1()
{ struct SList L1;
=-1;
return L1;
}
/*初始化线性表2*/
struct SList InitSList2()
{ struct SList L2;
=-1;
return L2;
}
/*初始化线性表3*/
struct SList InitSList3()
{ struct SList L3;
=-1;
return L3;
}
(2).函数名称:建立
①.名字:InputSList
②.功能:建立无序线性表
③.入口参数:L
④.出口参数:L
⑤.N-S图
⑥.源程序清单
struct SList InputSList(struct SList L)
{ int x=0;
printf("\n请输入数据,结束输入-1!\n");
scanf("%d",&x);
while(x!=-1)
{ [++]=x;
if(==MAXSIZE-1)
{ printf("\n顺序表已满!\n");
break;
}
scanf("%d",&x);
}
return L;
}
(3).函数名称:建立1
①.名字:InputSList1
②.功能:建立有序线性表L1
③.入口参数:L1,x
④.出口参数:L1
⑤.N-S图
⑥.源程序清单
/*建立有序线性表1*/
struct SList InputSList1(struct SList L1)
{ int x=0;
printf("\n请按从小到大顺序输入数据,结束输入-1!\n");
scanf("%d",&x);
while(x!=-1)
{ if (==-1)
[++]=x;
else if( []<=x)
[++]=x;
else
printf("\n请按从小到大顺序输入数据!\n");
if(==MAXSIZE-1)
{ printf("\n顺序表已满!\n");
break;
}
scanf("%d",&x);
}
return L1;
}
/*建立有序线性表2*/
struct SList InputSList2(struct SLis