# 数据结构的基本概念

# 基本概念和术语

# 数据

  • 数据是信息的载体,是描述客观事物属性的数、字符及所有能输入到计算机中并被计算机程序识别和处理的符号的集合。
  • 数据是计算机程序加工的原料,是计算机程序处理的对象。数据是信息的表现形式,信息是数据的内涵。数据是信息的载体,信息是数据的外延。
  • 数据是客观事物属性的数、字符及所有能输入到计算机中并被计算机程序识别和处理的符号的集合。数据是计算机程序加工的原料,是计算机程序处理的对象。
  • 数据是信息的表现形式,信息是数据的内涵。数据是信息的载体,信息是数据的外延。

# 数据元素

数据元素是数据的基本单位,通常作为一个整体进行考虑和处理。一个数据元素可由若干个数据项组成。数据项是数据不可分割的最小单位。例如,一个人的数据元素可以由姓名、性别、出生年月、身份证号码、家庭住址、联系电话等若干个数据项组成。

# 数据对象

数据对象是性质相同的数据元素的集合,是数据的一个子集。数据对象是数据的一个子集,数据元素是数据对象的一个成员。例如,一个班级的学生是一个数据对象,每个学生是一个数据元素。

# 数据类型

数据类型是一个值得集合和定义在此集合上的一组操作的总称。

# 数据结构

数据结构是相互之间存在一种或多种特定关系的数据元素的集合。在任何问题领域,数据元素都不是孤立存在的,它们之间存在着某种关系,这种数据元素之间的关系称为结构。数据结构包括三方面的内容:数据的逻辑结构、数据的存储结构和数据的运算。

# 算法和算法评价

# 算法的基本概念

算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作。

  1. 有穷性。算法必须保证执行有限的步骤之后,自动结束而不会出现无限循环,并且每一个步骤可以在有限时间内完成。
  2. 确定性。算法中的每一条指令必须有确切的含义,且每一步都可在有穷时间内完成。
  3. 可行性。算法的每一步都必须是可行的,也就是说,每一步都能够通过执行有限次数完成。
  4. 输入。一个算法有零个或多个输入,这些输入取自于某个特定的对象的集合。
  5. 输出。一个算法有一个或多个输出,这些输出是同输入有着某些特定关系的量。
  6. 正确性。算法应该具有输入、输出和加工处理无歧义性、能正确反映问题的需求、能够得到问题的正确答案。
  7. 可读性。算法应该具有良好的可读性,以便于阅读、理解和交流。
  8. 健壮性。当输入数据不合法时,算法也能做出相关处理,而不是产生异常或莫名其妙的结果。 9.高效率与低存储量需求。算法执行时间短,运行所需存储量低。

# 算法效率的度量

算法的效率的度量是通过算法的时间复杂度和空间复杂度来描述的。

# 时间复杂度

# 空间复杂度