数据结构基本术语

数据结构

1.1 数据:数据是信息在计算机程序中的表现形式或编码形式,是描述客观事物的数、字符以及所有能输入计算机中并被计算机程序识别和处理的集合。

       数据可以大致分为两类:一类数值型数据,包括整形、浮点型、复数、双精度数等主要用于工程和科学计算,以及商业事务处理。另一类非数值型数据,主要包括字符和字符串,以及文字、图形、图像、语音等。

1.2    数据元素:数据元素十数据的基本单位,也是计算机处理或者访问的基本单位。例如一个字符串中的每一个字符、一个数组的每一个数组成分都是数据元素。不同场合下数据元素可以有别名,如元素、记录、节点、表项等。

1.3    数据项:数据元素可以是简单元素,如整数、浮点数、字符等;也可以是由多个数据项构成符合元素。数据项又称为属性、字段、域。数据元素中的数据项可以分为两种:一种叫做初等项,如学生的性别、籍贯等,这些数据项是在数据处理时不能再分割的最小单位;另一种叫做组合项,如学生的成绩,它可以再划分为物理、化学等更小的项。

1.4    数据结构:在数据处理中所涉及的数据元素之间都不是孤立的,在他们之间存在着某种关系,这种数据元素之间的关系称为结构。因此,数据结构的定义为:数据结构是由特定问题相关的某一数据元素的集合和该集合中数据元素之间的关系组成的。数据结构可分为静态数据结构(static data structure)和动态数据结构(dynamic data structure)。例如:数组是静态数据结构,它的元素个数和元素间的关系是不变的;链表和索引是动态数据结构,它们的元素个数和元素间的关系将会因插入或删除二变化。

1.5    数据对象:狭义的观点认为数据对象是具有一定关系的相同性质的数据元素的集合。广义的观点认为数据对象是一个由数据抽象和处理抽象构成的封装体,即数据对象的声明中不但要包含属性,还要包含可用的操作。

1.6    数据类型:从程序设计角度来看,数据类型和数据结构的概念是相通的,主要用于刻画程序中操作对象的特性。数据类型明确或者隐含地规定了在程序执行期间变量、表达式或函数所有可能的取值范围,以及作用在这些取值上的操作。因此,数据类型是一个值得集合和定义在这个集合上的一组操作的总称。数据类型分为两类,一是内置数据类型(或者称作基本数据类型或者原子类型),如C语言的整形、浮点型等;二是构造型数据类型,如一个学生的学习卡片,除了姓名、性别、年龄等基本类型外,还包括家庭成员等子结构类型。

基本数据类型的每一个数据元素都是单一的无法再分割的整体。构造数据类型可以由不同成分的内置数据类型或子结构类型按照一定的规则组成。

1.7    抽象数据类型ADT:抽象的本质就是抽取反映问题本质的东西,忽略非本质的细节。另外,抽象数据类型把使用与实现分离,实现封装与信息隐蔽。一般的,抽象数据类型由用户定义,是用于表示应用问题的数据模型。

事实上,抽象数据类型体现了程序设计中问题分解和信息隐藏的特征。它把问题分解为多个规模较小且容易处理的问题,然后把每个功能模块的实现为一个独立单元,通过一次或多次调用来实现整个问题。

补充:

l  数据类型与数据结构的关系:一般认为,数据结构是一种抽象的描述,数据元素的定义和元素间关系的定义舍弃了实际的物理背景,是通用型的定义。数据类型是一种有实际问题要求背景的特定的定义,是数据结构的实例化。

l  数据结构和数据对象的关系:从对象技术的意义上讲,数据对象不但包括了数据结构,还包括了数据结构存储表示和施加于其上的运算。可以说,数据对象包含了数据结构所涉及的所有层面。

思考:系统开发中数据设计三视图为数据类容、数据结构和数据流。其中有关数据结构的讨论主要涉及数据元素之间的关系,那么数据元素内容应在什么时候考虑?

猜你喜欢

转载自www.cnblogs.com/hoganben/p/10351917.html