数据结构2-抽象数据类型的表示与实现

数据结构2-抽象数据类型的表示与实现

ID:44772524

大小:74.50 KB

页数:23页

时间:2019-10-28

数据结构2-抽象数据类型的表示与实现_第1页
数据结构2-抽象数据类型的表示与实现_第2页
数据结构2-抽象数据类型的表示与实现_第3页
数据结构2-抽象数据类型的表示与实现_第4页
数据结构2-抽象数据类型的表示与实现_第5页
资源描述:

《数据结构2-抽象数据类型的表示与实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、数据结构第二课抽象数据类型的表示与实现第二课抽象数据类型的表示与实现本课主题:抽象数据类型的表示与实现教学目的:了解抽象数据类型的定义、表示和实现方法教学重点:抽象数据类型表示法、类C语言语法教学难点:抽象数据类型表示法授课内容:一、抽象数据类型定义(ADT)抽象数据类型:是指一个数学模型以及定义在该模型上的一组操作。抽象数据类型和数据类型实质上是一个概念,它仅取决于数据类型的逻辑性,而与其在计算机内部如何表示和实现是无关的。抽象数据类型的定义由一个值域和定义在该值域上的一组操作组成。抽象数据类型实例—线性表该集合

2、内的元素有关系:除第一个和最后一个外,每个元素有唯一的前趋和唯一的后继。操作:插入一个元素、删除一个元素等。抽象数据类型分类(按其值的不同特性)抽象数据类型表示法(1)一、三元组表示:(D,S,P)其中D是数据对象,S是D上的关系集,P是对D的基本操作。二、书中的定义格式:ADT抽象数据类型名{数据对象:<数据对象的定义>数据关系:<数据关系的定义>基本操作:<基本操作的定义>}ADT抽象数据类型名抽象数据类型表示法(2)数据对象和数据关系的定义用伪码描述。数据基本操作的定义格式:基本操作名(参数表)初始条件:〈初

3、始条件描述〉操作结果:〈操作结果描述〉抽象数据类型三元组表示法实例ADTTriplet{数据对象:D={e1,e2,e3

4、e1,e2,e3∈Elemset(定义了关系运算的某个集合)}数据关系:R1={〈e1,e2>,〉基本操作:InitTriplet(&T,v1,v2,v3)DestroyTriplet(&T)Get(T,i,&e)Put(&T,i,e)IsAscending(T)IsDescending(T)Max(T,&e)Min(T,&e)}ADTTripletADT抽象数据类型实例—线性表抽

5、象数据类型的实现抽象数据类型可通过固有数据类型来表示和实现,即利用处理器中已存在的数据类型来说明新的结构,用已经实现的操作来组合新的操作。二、类C语言语法(1)1、预定义常量和类型#defineTRUE1#defineFALSE0#defineOK1#defineERROR0#defineINFEASIBLE-1#defineOVERFLOW-2typedefintStatus;//Status是函数的类型,其值是函数结果状态代码。精选了C的一个子集,扩充修改,增强了语言的描述功能。二、类C语言语法(2)2、数据结

6、构的存储结构typedefElemTypefirst;3、基本操作的算法函数类型函数名(函数参数表){//算法说明语句序列}//函数名4、赋值语句简单赋值:变量名=表达式;串联赋值:变量名1=变量名2=...=变量名k=表达式二、类C语言语法(3)成组赋值:(变量名1,...,变量名k)=(表达式1,...,表达式k);结构名=结构名;结构名=(值1,...,值k);变量名[]=表达式;变量名[起始下标..终止下标]=变量名[起始下标..终止下标];交换赋值:变量名<-->变量名;条件赋值:变量名=条件表达式?表达

7、式?表达式T:表达式F二、类C语言语法(4)5、选择语句5.1if(表达式)语句;5.2if(表达式)语句;else语句;5.3switch(表达式){case值1:语句序列1;break;...case值n:语句序列n;break;default:语句序列n+1;break;}二、类C语言语法(5)6、循环语句for(赋初值表达式;条件;修改表达式序列)语句;while(条件)语句;do{语句序列}while(条件);7、结束语句return[表达式];return;//函数结束语句break;//case结束语

8、句exit(异常代码);//异常结束语句二、类C语言语法(6)8、输入和输出语句scanf([格式串],变量1,...,变量n);9、注释//文字序列10、基本函数max(表达式1,...,表达式n)min,abs,floor,ceil,eof,eoln11、逻辑运算&&与运算;

9、

10、或运算例:Triplet的类C表示和实现//采用动态分配的顺序存储结构TypedefElemType*Triplet://由InitTriplet分配三个元素存储空间//基本操作的函数原型说明StatusInitTriplet(Trip

11、let&T,ElemTypev1,ElemTypev2,ElemTypev3)StatusDestroyTriplet(&T)StatusGet(T,i,&e)StatusPut(&T,i,e)StatusIsAscending(T)StatusIsDescending(T)StatusMax(T,&e)StatusMin(T,&e)//构造三元组T,依次置

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

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

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