程序设计 = 数据结构 + 算法
一、基本概念
1.数据
是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。
重点:
- 符号
- 可以输入到计算机中
- 能被计算机程序处理
2.数据元素
是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理,也被称为记录。
比如在人类中,人就是数据元素。
3.数据项
若干个数据项组成数据元素,数据项是数据不可分割的最小单位。
比如,人这个数据元素,可以有眼、耳、鼻、手、脚等数据项。
4.数据对象
性质相同的数据元素的集合。
5.数据机构
是相互之间存在一种或多种特定关系的数据元素的集合。
二、数据结构
数据结构可以分为两种:逻辑结构和物理(存储)结构。
1.逻辑结构
是指数据对象中数据元素之间的相互关系。
- 集合结构
数据元素除了同属于一个集合外,没有其他关系。 - 线性结构
数据元素之间为1:1的关系。 - 树形结构
数据元素之间为1:N的关系。 - 图形结构
数据元素之间为M:N的关系。
2.物理(存储)结构
是指数据的逻辑结构在计算机中的存储形式。
- 顺序存储结构
把数据元素存放在地址连续的存储单元里,其数据间的逻辑关系和物理关系是一致的。
数组就是以这种方式进行存储的。 - 链式存储结构
把数据元素存放在任意的存储单元里,这组存储单元可以是连续的,也可以是不连续的。
数据间的物理关系并不能反映其逻辑关系,因此在链式存储结构中,有一个指针存放数据元素的地址,这样就可以通过指针找到相关联的数据元素位置。