主要研究问题:如何合理地组织数据、高效地处理数据。
数据结构是一门研究非数值计算程序设计中的操作对象,以及这些操作对象之间的关系和操作的学科。
数据(Data):数据是客观事物的符号表示,是所有能输入到计算机中并被计算机程序处理的符号的总称。
数据元素(Data Element):数据元素是数据的基本单位,在计算机中通常作为一个整体进行考虑和处理。
数据项(Data Item):是组成数据元素的、有独立含义的、不可分割的最小单位。
数据对象(Data Object):是性质相同的数据元素的集合,是数据的一个子集。
数据结构(Data Structure)是相互之间存在一种或多种特定关系的集合。换言之,数据结构是具有一定结构特征的数据的集合,结构指的就是数据元素之间存在的关系。
数据结构包括逻辑结构和储存结构两个层次。
数据的逻辑结构有两个要素,一是数据元素,二是关系。关系指数据元素之间的逻辑关系。
逻辑结构通常指集合、线性、树和图这四种结构(如下图)。
常见的线性结构包括线性表、数组、栈和队列等。集合结构、树结构和图结构都属于非线性结构。
数据对象在计算机中的储存表示称为数据的存储结构,也称为物理结构。顺序存储结构和链式存储结构是各有优劣的两种基本的存储结构。
(1) 顺序存储结构
顺序存储结构借助元素在存储器中的相对位置来表示数据元素之间的逻辑关系,在存储器中需要连续的存储空间。
(2)链式存储结构
链式存储结构无需占用连续的存储空间,但是为了表示数据元素之间的关系,需要给每个数据元素附加地址字段,用于存放后继元素的存储地址。
1.数据类型
数据类型是对一组具有相同属性的数据集合的描述。
2.抽象数据类型
抽象数据类型是由用户定义的、表示应用问题的数学模型,以及在这个模型之上的一组操作的总成,具体包括数据对象、数据对象上关系的集合以及对数据对象的基本操作的集合。
略
算法(Algorithm)是为了解决某类问题而规定的一个有限长的操作序列,其必须满足五个重要特性:有穷性、确定性、可行性、输入和输出。
正确性、可读性、健壮性和高效性。
主要通过问题规模和语句频度分析算法的时间复杂度。
T(n) = O(f(n))
原文:https://www.cnblogs.com/juhuai/p/14588159.html