1.数据结构的起源
数据结构的起源可以追溯到计算机科学的早期发展阶段,随着计算机的发明和编程语言的出现,数据组织和管理问题逐渐显现出来。数据结构的产生是为了高效地组织、存储和处理数据,适应各种算法和程序需求。
2.什么是数据?
数据不仅仅包括整型、实型等数值类型,还包括字符及声音、图像、视频等非数值型类型。
3.数据元素
比如,在人类中,人就是数据元素
比如,在牲畜中,猪就是数据元素
4.数据项
数据项是数据不可分割的最小单位。
比如,像人这样的数据元素,有姓名、年龄、性别等数据项
5.数据对象
数据对象是性质相同的数据元素的集合,是数据的子集。
性质相同指的是数据元素有相同数量和类型的数据项。比如,人都有姓名、年龄、性别等数据项。
6.什么是结构?
结构简单理解就是关系。
不同的数据元素之间不是独立的,而是存在特殊的关系,我们将这些关系称之为结构。
7.什么是数据结构?
数据结构是集合,是相互之间存在一种或多种特定关系的数据元素的集合。
注:按照视点的不同,我们把数据结构分为逻辑结构和物理结构。
8.逻辑结构
逻辑结构是数据对象中数据元素之间的相互关系。
第一种:集合结构
各个数据元素之间是平等的,除了同属于一个集合外,没有其他的任何关系。
第二种:线性结构
数据元素间的关系是一对一的。
第三种:树形结构
数据元素间的关系是一对多的。
第四种:图形结构
数据元素间的关系是多对多的。
9.物理结构(也叫存储结构)
物理结构是数据的逻辑结构在计算机中的存储形式。
(可以理解为从抽象的概念走向具体的实施)
第一种:顺序存储结构
把数据元素存放在地址连续的存储单元里。
(按顺序排队占位,井井有条。)
其数据间的逻辑关系和物理关系是一致的。
第二种:链式存储结构
把数据元素存放在任意的存储单元里。
(可以连续也可以不连续)
由于存储关系不能反应逻辑关系,因此要用一个指针存放数据元素的地址,这样就可以通过地址来找到数据元素的位置。
逻辑结构是面向问题的,而物理结构是面向计算机的,其基本的目标就是将数据及其逻辑关系存储到计算机的内存中。
10.数据类型
在C语言中,按照取值的不同,数据类型可以分为如下两类。
第一类:原子类型
是不可以再分解的基本类型,包括整型、实型字符型等。
第二类:结构类型
由若干个类型组合而成,是可以再分解的。例如,整型数组等。
11.抽象数据类型(ADT)
指一个模型及定义在该模型上的一组操作。
说白了,就是自己定义一个数据类型,定义抽象数据类型本质上就是一个建模的过程。