1 / 20
文档名称:

数据结构实验-集合的并交差运算实验报告.doc

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

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

分享

预览

数据结构实验-集合的并交差运算实验报告.doc

上传人:xnzct26 2021/12/26 文件大小:46 KB

下载得到文件列表

数据结构实验-集合的并交差运算实验报告.doc

文档介绍

文档介绍:. .
-优选
实 验 报 告
实验课程:数 据 结 构
实验工程:实验一集合的并交差运算
专 业:计算机科学与技术
班 级:
姓 名:
学 号:
指导教师:
目 录
问题定义及需求分析
〔1〕实验目的
〔2〕实验任务
〔3〕需求分析
二、概要设计:
(1)抽象数据类型定义
(2)主程序流程
(3) 模块关系
详细设计
(1)数据类型及存储构造
(2)模块设计
调试分析
. .
-优选
(1)调试分析
(2)算法时空分析
(3)经历体会
使用说明
(1)程序使用说明
测试结果
(1)运行测试结果截图
附录
(1)源代码
问题定义及需求分析
〔1〕实验目的
设计一个能演示集合的并、交、差运算程序。
〔2〕实验任务
1)采用顺序表或链表等数据构造。
2)集合的元素限定为数字和小写英文字母。
〔3〕需求分析:
输入形式为:外部输入字符串;
输入值限定围为:数字和小写英文字母;
输出形式为:字符集;
程序功能:计算两个集合的交、并、差以及重新输入集合功能;
概要设计:
(1)抽象数据类型定义:
. .
-优选
线性表
主程序流程:
调用主菜单函数 初始化两个线性表作为集合 给两个集合输入数据 输出集
合数据元素信息 另初始化两个线性表 创立选择功能菜单界面 通过不同选
项调用不同功能函数 在每个功能函数里面加完毕选择功能,实现循环调用功能菜单
计算完毕退出程序;
模块关系:
主菜单
差运算 并运算 交运算 新建集合 完毕/返回
完毕
三、详细设计
抽象数据类型定义:
typedef struct{
ElemType *elem;
int length;
int listsize;
}SqList;
存储构造:顺序表;
模块1-在顺序表的逻辑为i的位置插入新元素e的函数;
. .
-优选
算法如下:
/**在顺序表的逻辑为i的位置插入新元素e的函数**/
Status ListInsert_Sq(SqList &L,int i,ElemType e)
{
ElemType *newbase,*p,*q;
if(i < 1 || i > + 1) return 0; //i的合法值为(1 <= i <= (L) + 1)
if( >= )
{ //当前储存空间已满,增加分配
newbase = (ElemType *)realloc(,( + LISTINCREMENT) * sizeof(ElemType));
if(!newbase) exit(-1); //储存分配失败
= newbase; //新基址
+= LISTINCREMENT; //增加储存容量
}
q = &([i - 1]); //q为插入位置
for(p = &([L