数据
数据(data)是对所有的客观事物做一个符号表示,在计算机科学当中,所有能输入到计算机中并且能够被计算机程序处理的符号总称。
int a;
scanf("%d",&a); //这就是给计算机输入了一个int型的数据
char b;
scanf("%c",&b); //给计算机输入了一个char型的数据
因此,在计算机科学当中,数据的含义十分广泛,如声音,图片,视频等都属于数据。
数据元素
数据元素(data element)是数据的基本单位,在计算机程序中,通常作为一个整体进行处理,例如“树”的结点,“图”的结点。
数据项
在一定的情况下,一个数据元素可能由多个数据项组成。例如图书管理系统中的一本书,这本书就属于数据元素,而书的书名,作者,编号等等都属于数据项。数据项是数据不可分割的最小单位。
数据对象
数据对象(data object)是一些性质相同的数据元素的集合,是数据的一个子集。例如,整数数据对象是整数集合N = {0,±1,±2,……,±N}。
数据结构
数据结构1(data structure)是相互之间存在一定关系的数据元素的集合。
根据数据元素的不同关系的特性主要讲数据结构分为以下4种基本结构:
集合、线性关系、树形结构和图状结构或网状结构。
集合
结构中的数据元素,除了“同一个集合”的关系之外,并没有其他关系,可以形象地理解为是绑在一起,而非自愿。
线性关系
结构中的数据元素之间存在一个一一对应的关系.
树形结构
结构中的数据元素存在一对多的关系。
图状结构或网状结构
结构中的数据元素存在多对多的关系。
逻辑结构
在结构中定义的这种“关系”,实际上是描述的数据元素之间的逻辑关系,因此又被称为是数据的逻辑结构。换句话说,也就是逻辑结构包括以上描述的四种基本结构:集合结构、线性结构、树形结构和图状结构。
存储结构
数据结构在计算机中的表示(也称为是映像)称为数据的物理结构,又称为存储结构。它包含数据元素的表示和关系的表示。
数据元素之间的关系在计算机中有两种不同的表示方法:顺序映像和非顺序映像,并由此得到两种不同的存储结构:顺序存储结构和链式存储结构。
顺序映像的特点是借助元素在存储器中的相对位置来表示数据元素之间的逻辑关系。
非顺序映像的特点是借助指示元素存储地址的指针表示数据元素之间的逻辑关系。
任何一个算法的设计取决于选定的数据(逻辑)结构,而算法的实现依赖于采用的存储结构
数据结构至今没有一个准确的定义,不同的人对其的意思也不尽相同。 ↩︎