数据结构与算法的概念合集
数据结构与算法的概念合集
基本概念
1、数据结构
a.数据是信息的载体,在计算机科学中指所有能输入到计算机中,并能被计算机程序识别和处理的符号集合。可以将数据分为两大类:①整数、实数等数值数据,②文字、声音、图像等非等值数值。
b. 数据元素是数据的基本单位,在计算机程序中,通常作为一个整体进行考虑和处理。构成数据元素的不可分割的最小单位称为数据项。
c.数据结构是指相互之间存在一定关系的数据元素之间的集合。按照视点不同,数据结构分为逻辑结构和存储结构。
逻辑结构:是指数据元素之间逻辑关系的整体,按照数据元素之间的逻辑关系不同,数据结构可以分为以下四类:
集合:数据元素之间就是“属于同一个集合”,除此之外,没有任何关系。
线性结构:数据元素之间存在一对一的线性关系。
树结构:数据元素之间存在着一对多的层次关系。
图结构:数据元素之间存在着多对多的任意关系。
存储结构:又称为物理结构,是数据及其逻辑结构在计算机中的表示,换而言之,存储结构除了存储数据之外,必须隐式或显式地存储数据元素之间的逻辑关系。通常有两种存储结构:①顺序存储结构和②链接存储结构
2、数据类型、抽象数据类型
数据类型是一组值的集合以及定义与这个值集上的操作的总称。
抽象是抽出问题本质的特征而忽略本质的细节,是对具体事物的概括。
抽象数据类型(ADT)*是一个*数据结构以及定义在该结构上的一组操作的总称。
抽象数据类型是带有一些操作的一些对象集合,抽象数据类型是数学的抽象,adt的定义中没有提到关于这组操作是如何解释。
3、算法
算法是对特定问题求解步骤的一种描述,是指令的有限序列。算法必须满足以下5个重要特性①输入、②输出、③有穷性、④确定性、⑤可行性
算法是为求解一个问题需要遵循的、被清楚指定的简单指令集合,一旦一个算法给定并且被确定是正确的,那么重要的一步就是确定该算法需要诸如多少时间,消耗多少资源等问题。
程序是对一个算法使用某种程序设计语言的具体实现。
“好”算法首先要满足算法的五大特性,此外还需要具有如下性质①正确性、②健壮性(鲁棒性),③简单性,④抽象分级、⑤高效性。
算法的描述方法:①自然语言、②流程图、③程序设计语言、④伪代码