- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ADT Triplet{ 数据对象:D={e1,e2,e3|e1,e2,e3?ElemSet} 数据关系:R1={e1,e2,e2,e3} 基本操作: Get(T,i,e) 初始条件:三元组T已存在,1?i?3 操作结果:用e返回T的第i元的值。 } ADT Triplet 1.2 基本概念和术语 抽象数据类型可通过固有数据类型来表示和实现,即利用处理器中已存在的数据类型来说明新的结构,用已经实现的操作来组合新的操作。 由于本书在高级程序设计语言的虚拟层次上讨论抽象数据类型的表示和实现,并且讨论的数据结构及其算法主要是面向读者,故采用介于伪码和C语言之间的类C语言作为描述工具,有时也用伪码描述一些只含抽象操作的抽象算法。 这使得数据结构和算法的描述和讨论简明清晰,不拘泥于C语言的细节,又能容易转换成C或者C++程序。 1.3 抽象数据类型的表示和实现 本书采用的类C语言精选了C语言的一个核心子集,同时作了若干扩充,增强了语言的描述功能。以下对其作简要说明。 (1)预定义常量和类型 //函数结果状态代码 #define TRUE 1 #define FLASE 0 #define OK 1 #define ERROR 0 #define INFEASIBLE -1 #define OVERFLOW -2 // Status是函数的类型,其值是函数结果状态代码 Typedef int Status; 1.3 抽象数据类型的表示和实现 (2)数据结构的表示用类型定义(typedef)描述。数据元素类型约定为Elemtype,由用户在使用该数据类型时定义。 (3)基本操作的算法都用以下形式的函数描述: 函数类型 函数名(函数参数表){ //算法说明 语句序列 }//函数名 1.3 抽象数据类型的表示和实现 (4)赋值语句有 简单赋值 变量名=表达式; 串值赋值 变量名1=变量名2=……=表达式 成组赋值 (变量名1,。。。,)=(表达式1,) 交换赋值 变量名 ? 变量名 条件赋值 变量名=条件表达式?表达式T:表达式F 1.3 抽象数据类型的表示和实现 (5)选择语句有 条件语句1 if(表达式)语句; 条件语句2 if(表达式)语句; Else 语句 开关语句1 switch(表达式 ) { case 值1:语句序列1;break; Default: 语句序列n+1;} 开关语句2 switch{ case 条件1:语句序列1;break; Default: 语句序列n+1;} 1.3 抽象数据类型的表示和实现 (6)循环语句有 For语句 for(赋初值表达式;条件;修改表达式序列)语句; While 语句 while(条件)语句; do-while语句 do { 语句序列}while(条件); 1.3 抽象数据类型的表示和实现 (7)结束语句 函数结束语句 return 表达式; return; Case结束语句 break; 异常结束语句 exit(异常代码) (8)输入和输出语句 输入语句 scanf([格式串],变量1,变量n); 输出语句 printf([格式串],表达式1,表达式2); 1.3 抽象数据类型的表示和实现 (9)注释 单行注释//文字序列 (10)基本函数有 求最大值 max(表达式1,表达式n) 求最小值 min(表达式1,表达式n) 求绝对值 abs(表达式) 求不足整数值 floor(表达式) 判定行结束 eoln(文件变量)或eoln 1.3 抽象数据类型的表示和实现 (11)逻辑运算约定 与运算: 对于A B,当A的值为0时,不再对B求值。 或运算||: 对于A||B,当A的值为非0时,不再对B求值。 1.3 抽象数据类型的表示和实现 例题:抽象数据类型Triplet的表示和实现 //-------- 采用动态分配的顺序存储结构---------------- Typedef ElemType *Triplet: //-------- 基本操作的函数原形说明---------------- //initTriplet分配三个元素存储空间 Status InitTriplet (Triplet T,ElemType v1, ElemType v2, ElemType v3); //操作结果:构造了三元组T,元素e1
您可能关注的文档
最近下载
- 高速公路ETC收费系统网络安全探究-高速公路论文-工程论文.docx VIP
- 《2014离心泵的使用原则及油密封的设计标准.doc VIP
- 2026福建能源石化集团秋招试题及答案.doc VIP
- 钢梯设计图集15J401.pdf VIP
- 激光治疗知情同意书.docx VIP
- DBJ_T 13-492-2025 民用建筑电气防火设计标准.docx VIP
- 大学计算机基础——基于计算思维(Windows 10+Office 2016)(第2版) 教案-教学设计 第2章 Windows 10基本操作.docx
- 各位同仁︰大家好!.ppt VIP
- 2023-2024学年高二上学期生物期末模拟卷.docx VIP
- 年产5万吨乙炔发生工段工艺流程设计.pdf VIP
原创力文档


文档评论(0)