欢迎来到天天文库
浏览记录
ID:8467003
大小:321.50 KB
页数:19页
时间:2018-03-28
《《数据结构》实验指导书》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、《数据结构》编撰闽江学院计算机实验教学中心印制I目录前言1实验一、线性表基本操作的实现2实验二、集合的并、交、差运算8实验三、二叉树的基本操作的实现12实验四、哈夫曼编/译码器1617前言《数据结构》是计算机科学与技术、软件工程等专业的专业基础必修课,主要介绍如何合理地组织数据、有效地存储和处理数据,正确地设计算法以及对算法进行分析和评价。本课程的学习应使学生深刻地理解数据结构的逻辑结构和物理结构的基本概念及有关算法,培养学生基本的、良好的程序设计技能以及针对具体问题,选择适当的数据结构,设计出有效算法的能力。《数据结构》是一门理论和实践相结合的课程,它在整个计算机专业教学体系中
2、处于举足轻重的地位,是计算机科学的算法理论基础和软件设计的技术基础,其上机实验的目的主要是编程实现数据结构各章的主要算法,训练学生实际动手进行程序设计和程序调试的能力,加深对数据结构相关概念和算法的理解。17实验一、线性表基本操作的实现实验目的1掌握线性表顺序存储基本操作;2掌握线性表链式存储基本操作;3学会设计实验数据验证程序。实验环境计算机,windowxp操作系统,VC++6.0实验内容1.线性表顺序存储基本操作存储结构定义:#defineLIST_INIT_SIZE100//线性表存储空间的初始分配量#defineLISTINCREMENT10//线性表存储空间的分配增量
3、typedefstruct{ElemType*elem;//存储空间基址intlength;//当前长度intlistsize;//当前分配的存储容量(以sizeof(ElemType)为单位)}SqList;实现的基本操作:InitList(&L)操作结果:构造一个空的线性表L。DestroyList(&L) 初始条件:线性表L已存在。 操作结果:销毁线性表L。ListEmpty(L) 初始条件:线性表L已存在。 操作结果:若L为空表,则返回TRUE,否则返回FALSE。17ListLength(L) 初始条件:线性表L已存在。 操作结果:返回L中元素个
4、数。PriorElem(L,cur_e,&pre_e) 初始条件:线性表L已存在。 操作结果:若cur_e是L中的数据元素,则用pre_e返回它的前驱,否则操作失败,pre_e无定义。NextElem(L,cur_e,&next_e) 初始条件:线性表L已存在。 操作结果:若cur_e是L中的数据元素,则用next_e返回它的后继,否则操作失败,next_e无定义。GetElem(L,i,&e) 初始条件:线性表L已存在,1≤i≤LengthList(L)。 操作结果:用e返回L中第i个元素的值。LocateElem(L,e,compare()) 初始
5、条件:线性表L已存在,compare()是元素判定函数。 操作结果:返回L中第1个与e满足关系compare()的元素的位序。若这样的元素不存在,则返回值为0。ListTraverse(L,visit()) 初始条件:线性表L已存在,visit()为元素的访问函数。 操作结果:依次对L的每个元素调用函数visit()。 一旦visit()失败,则操作失败。ClearList(&L) 初始条件:线性表L已存在。 操作结果:将L重置为空表。PutElem(&L,i,&e) 初始条件:线性表L已存在,1≤i≤LengthList(L)。 操作结果:L
6、中第i个元素赋值同e的值。ListInsert(&L,i,e17) 初始条件:线性表L已存在,1≤i≤LengthList(L)+1。 操作结果:在L的第i个元素之前插入新的元素e,L的长度增1。ListDelete(&L,i,&e) 初始条件:线性表L已存在且非空,1≤i≤LengthList(L)。 操作结果:删除L的第i个元素,并用e返回其值,L的长度减1。1.线性表链式存储基本操作存储结构定义:typedefstructLNode{//结点类型ElemTypedata;structLNode*next;}*Link,*Position;typedefstr
7、uct{//链表类型Linkhead,tail;intlen;}LinkList;实现的基本操作:MakeNode(&p,e)操作结果:分配由P指向的值为e的结点,并返回OK;若分配失败,返回ERRORFreeNode(p)操作结果:释放p所指结点InitList(&L)操作结果:构造一个空的线性表L。DestroyList(&L) 初始条件:线性表L已存在。 操作结果:销毁线性表L。ClearList(&L17) 初始条件:线性表L已存在。 操作结果:将L重置为
此文档下载收益归作者所有