数据结构的基本概念
1.数据
数据是对客观事物的符号表示,在计算机科学中指所有能输入到计算机中并且被计算机程序处理的符号的总称。例如,整数、实数和字符串都是数据。
2.数据元素
数据元素是数据的基本单位,在计算机程序中通常将其作为一个整体进行考虑和处理。有时,一个数据元素可有若干数据项组成。例如,一本书的书目录信息为一个数据元素,而书目录信息的每一项(如书名、作者名等)为一个数据项。
3.数据项
数据项是数据结构中讨论的最小单元,是数据记录中最基本的、不可分的数据单位。
4.数据对象
数据对象的性质相同的数据元素的集合,是数据的一个子集。例如,大写字母就是一个数据对象,大写字母数据对象是集合{'A','B','C',...,'Z'}。
5.数据结构
数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。数据结构包括三方面内容:
1)逻辑结构
2)存储结构
3)对数据的运算
6.数据的逻辑结构
数据的逻辑结构是对数据之间关系的描述,它与数据的存储结构无关,同一种逻辑结构可以有多种存储结构。归纳起来数据的逻辑结构主要有两类:
1)线性结构
2)非线性结构
非线性结构中的结点存在着一对多的关系,它又细分为树形结构和图形结构。
7.数据的物理结构
数据的物理结构又称为存储结构,是数据的逻辑结构在计算机中的表示(又称映射)。常用的四种存储方法:
1)顺序存储方法
2)链式存储方法
3)索引存储方法
4)散列存储方法
8.算法的五大特性
1)有穷性(一个算法必须保证执行有限步之后结束)。
2)确定性(算法的第一步必须有确定的定义)。
3)输入(一个算法有0个或多个输入,所谓0个输入指算法本身的确定了初始条件)。
4)输出(一个算法有一个或多个输出,没有输出的算法是毫无意义的)。
5)可行性(可以有限实现)。
9.算法的设计目标
1)正确性(要求算法能够正确地执行预先规定的功能和性能要求。这是最重要也是最基础的标准)。
2)可读性(要求算法易于人的理解)。
3)健壮性(要求算法有很好的容错性,能够对不合理的数据进行检查)。
4)高效率与低存储量需求(算法的效率主要是指算法的执行时间。对于同一个问题如果有多种算法可以求解,执行时间短的算法效率高。算法的存储量是指算法执行过程中所需要的最大存储空间。高效率和低存储量这两者都与问题的规模有关)。
记忆概念图: