数 据结构是算是理论性较强的科目,但是很多人会忽视数据结构的重要性;其实当我们学习的越多,
工作经验也越加丰富的时候,就会发现数据结构穿插在任何一个地方,对于提高我们的技术水平是
很重要的一环(纯属个人瞎扯,可忽略),进入正题,本篇主要通过简单的表达方式来描述数据结构的
基本概念,为后面的的学习预热;
一、先别管什么是数据结构,我们先来看看什么是 数据 ?
数据是信息的载体,是承载信息的符号的集合;
简单理解:两个小同学在上课的时候传个小纸条,聊个天,商量下课干嘛去;那么这个纸条上的
文字符号就是数据,商量要干嘛的内容就是 信息,这样就好理解了,文字承载了信息,
那么文字符号就是数据;
二、我们知道了数据是什么,那么再看看 数据元素 又是啥?
数据元素是组成数据的基本单位;
简单理解:这个应该都能理解,数据元素组成了数据;举个例子,一个公司的人员数据分为两个
部分,一个是基层员工记录,另一个是管理层员工记录;那么这两个记录就是两个不同
的数据元素,共同组成了公司的人员数据;
三、我们再看看 数据项 又是啥?
数据项是构成数据元素的不可分割的最小单元;
简单理解:上面我们举例说明了什么是数据元素,那么现在把上面的基层员工记录(一个数据元素)
拿过来用一下,基层数据员工记录由 姓名、性别、年龄 .....很多个小部分组成,这里的
每一个小部分就是一个数据项,姓名是一个数据项,性别又是一个数据项 ........
四、再来看一个相关的概念 数据对象 ?
晕了没关系,明白是什么就行,好 ,继续!
数据对象是具有相同性质的数据元素的集合,是数据的子集;
简单理解: 我们假设数据 A 由数据元素 A1 , A2 , A3 , A4 组成,那么随便来一个子集:{ A1 , A4 },
就是一个数据对象;也可以是 {A2, A4} 等等;
五、数据类型和抽象数据类型(ADT --- Abstract Data Type)?
这两个放到一起,先来看看 数据类型;
数据类型是一个值得集合以及定义在这个集合上的一组操作;
简单理解: 字符型 和 整型 是两个不同的数据类型,那么他们定义在内存中的存储长度或者取值范围是
不一样的,另外两者的操作也不一样,比如整型的可以进行 加减乘除 操作;
再来看看 抽象数据类型;
抽象数据类型:一个数学模型,以及定义在该数据模型上的一组操作;
简单理解:其实和数据类型是一样的,抽象在什么地方呢?比如整型数据类型,可以进行加减乘除运算操作,
无论操作系统或者处理器是什么样的,那么在我们看来,整型数据类型是没有区别的,区别在于
底层和内部实现的差异上,但是我们是看不见的,所以整型数据类型,就是一个抽象数据类型;
六、轮到数据结构了?
数据结构 是相互之间存在一种或多种特定关系的数据元素的集合;
包括三部分:逻辑结构 存储结构 数据的运算
推荐参考书籍:数据结构(C语言版),严蔚敏 吴伟民 编著;