?/p>
1
章绪?/p>
1.1
简述下列术语:数据,数据元素、数据对象、数据结构、存储结构、数据类
型和抽象数据类型?/p>
解:
数据
是对客观事物的符号表示?/p>
在计算机科学中是指所有能输入到计算机?/p>
并被计算机程序处理的符号的总称?/p>
数据元素
是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处
理?/p>
数据对象
是性质相同的数据元素的集合,是数据的一个子集?/p>
数据结构
是相互之间存在一种或多种特定关系的数据元素的集合?/p>
存储结构
是数据结构在计算机中的表示?/p>
数据类型
是一个值的集合和定义在这个值集上的一组操作的总称?/p>
抽象数据类型
是指一个数学模型以及定义在该模型上的一组操作?/p>
是对一般数?/p>
类型的扩展?/p>
1.2
试描述数据结构和抽象数据类型的概念与程序设计语言中数据类型概念的
区别?/p>
解:
抽象数据类型包含一般数据类型的概念,但含义比一般数据类型更广?/p>
更抽象?/p>
一般数据类型由具体语言系统内部定义?/p>
直接提供给编程者定义用户数
据,
因此称它们为预定义数据类型?/p>
抽象数据类型通常由编程者定义,
包括定义
它所使用的数据和在这些数据上所进行的操作?/p>
在定义抽象数据类型中的数据部
分和操作部分时,
要求只定义到数据的逻辑结构和操作说明,
不考虑数据的存?/p>
结构和操作的具体实现?/p>
这样抽象层次更高?/p>
更能为其他用户提供良好的使用?/p>
口?/p>
1.3
设有数据结构
(D,R)
,其?/p>
?/p>
?/p>
4
,
3
,
2
,
1
d
d
d
d
D
?/p>
?/p>
?/p>
?/p>
r
R
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
4
,
3
,
3
,
2
,
2
,
1
d
d
d
d
d
d
r
?/p>
试按图论中图的画法惯例画出其逻辑结构图?/p>
解:
1.4
试仿照三元组的抽象数据类型分别写出抽象数据类型复数和有理数的定义
(有理数是其分子、分母均为自然数且分母不为零的分数)
?/p>
解:
ADTComplex{
数据对象?/p>
D={r,i|r,i
为实?/p>
}
数据关系?/p>
R={<r,i>}
基本操作?/p>
InitComplex(&C,re,im)
操作结果:构造一个复?/p>
C
,其实部和虚部分别为
re
?/p>
im
DestroyCmoplex(&C)
操作结果:销毁复?/p>
C
Get(C,k,&e)
操作结果:用
e
返回复数
C
的第
k
元的?/p>
Put(&C,k,e)
操作结果:改变复?/p>
C
的第
k
元的值为
e