为了当好一个程序员(可能),学好数据结构是非常有必要的,所以,开始吧
1
首先,我们在学习数据结构,就要先搞懂数据是啥,简单说,数据就是存储在计算机中的,并且能被计算机识别并表达出来的一种东西,而数据元素,则是组成数据的东西,被系统以整体对待,数据项是数据元素中的组成部分,就像是人有五官和四肢一样,数据项是不可分割的最小单元.数据对象是具有相同性质的一组数据元素,通常我们把数据对象称为数据,然后,我们就要开始学习数据结构了
所谓结构,主要分为逻辑结构和物理结构,下面介绍这两种结构的特点
(1),逻辑结构
逻辑结构是指数据之间的相互关系,分为一下几种结构,
1集合结构,集合结构中数据的关系仅仅是都分布在同一个集合中, 没有其他关系,像是平行一样
2线性结构,在这种结构中的数据是呈现一对一的关系,就像是一条线串起来的一样
3树形结构,和上面结构不一样的地方在于这个是可以一对多的
4图形结构,这个结构是多对多的,每个数据都会有多个数据与其对应
(2),物理结构
物理结构,和我们在上课时学到的物理不是一回事,这个物理结构,是指数据的存储方式, 数据的物理结构应该能表现出数据的逻辑结构,难点就是如何通过物理结构表现出数据的逻辑结构,物理结构分为两种,分别是
1顺序存储结构,就是把数据放在地址连续的存储单元中,就像是c语言里面的数组一样,一系列连续的空间被分配给数组占用
2链式存储结构,和上面的结构有很大的不同,链式存储结构是先把数据放在任意地址,可以连续也可以不连续,我们为了让他能反映出数据的逻辑结构,所以我们就要借助指针来表示出数据纸之间的逻辑结构
以上就是数据结构的几种类型,接下来按照教材的顺序,应该是数据类型
数据对象的类型
根据所占空间的大小,分为原子类型和结构类型,原子结构是不可再分的数据类型.像是c语言中的int,char之类的,而结构类型是指由不同的数据类型组成的,像是数组,结构体,字符串一类的
我们为了能够充分了解数据是如何在计算机内部运行的,不得不抽象化我们所见到的,剥离事物的本质,以完全不同的另一种方式来看待计算机内部对不同类型数据的操作,根据这个,我们又得到了抽象数据类型
抽象数据类型 指一个数学模型以及定义在此数学模型上的一组操作,简单说,在不同的操作系统上,不同的硬件上面,数据的存储形式肯定是不一样的,虽然都是叫做整型数据,但是实际的存放方式是不一样的,不过在编程者看来,这些都是一样的,所以这就会统称为整型数据,不仅仅是系统定义好的数据类型,还可以自己定义,例如我们可以定义数据变量zuobiao,这个变量是由三个整形数据组成的
总的来说,数据结构就是相互之间存在一种或多种关系的数据的集合
好吧,第一章,结束