山东中医药大学2013级沈鹏计算机科学与技术《数据结构》课堂笔记

来源:互联网 发布:做展架用什么软件 编辑:程序博客网 时间:2024/04/29 17:51

第一章:绪论

1.3 数据结构的基本概念

数据可以分为两大类:一类是整数、实数等数值数据;另一类是文字、声音、图形和图像等非数值数据。

数据元素是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。构成数据元素的不可分割的最小单位成为数据项。

数据结构是指互相之间存在一定关系的数据元素的集合。 数据元素是讨论数据结构式涉及的最小的数据单位,其中的数据项一般不给予考虑。按照视点的不同,数据结构分为逻辑结构和存储结构。

数据的逻辑结构是指数据元素之间的逻辑关系的整体。

数据的存储结构又称为物理结构,是数据及其逻辑结构在计算机中的表示

,存储结构除了存储数据元素之外,必须隐式或显式的存储数据元素之间的逻辑关系。通常有两种存储结构:顺序结构和连接存储结构。

顺序存储结构的基本思想是:用一组连续的存储单元依次存储数据元素,数据元素之间的逻辑关系由元素的存储位置来表示。链接存储结构的基本思想是:用一组任意的存储单元存储数据元素,数据元素之间的逻辑关系用指针来表示。逻辑结构面向人,反映内部的构成方式。存储结构面向计算机。

 1.3.2 

抽象数据类型是一个数据结构以及定义在该结构上的一组操作的总称。

从逻辑上分四类:集合,线性结构(有顺序关系),树结构(存在一对多关系),图结构(存在多对多的任意结构)。

顺序存储结构:同一组连续的存储单元依次存储,只见逻辑关系用位置表示。

链接存储结构:用任意的存储单元存储,用指针表示。 

1.4.1

 算法是对待问题求解步骤的一种描述,是指令的有限序列。

输入:一个算法有零个或者多个输入。

输出:一个算法有一个或多个输出。

有穷性:一个算法必须总是在执行有穷步骤之后结束,且每一步都在有穷时间内完成。

确定性:算法中每一条指令必须有确切的意义,不存在二义性。在任何条件下对于相同的输入只能得到相同的输出。

可行性:算法描述的操作可以通过已经实现的基本操作执行有限次来实现。

程序是对一个算法使用某种程序设计语言的具体实现,原则上,算法可以用任何一种程序设计语言实现。

用流程图算法优点是直观易懂,缺点是严密性不如程序设计语言,灵活性不如自然语言。这种描述方法使用起来非常不方便。用程序设计语言描述的算法能由计算机直接执行,而缺点是抽象性差,使算法设计着拘泥于描述算法的具体细节,忽略了好算法和正确逻辑的重要性伪代码是介于自然语言和程序设计语言之间的方法。

 1.4.2 

度量算法效率的方法,先将算法实现,然后输入适当的数据运行,测算其时间和空间开销。事后统计的缺点在于编写程序实现算法将花费较多的时间与精力,所得实验结果依赖于计算机的软硬件等环境因素,有时容易掩盖算法本身的优劣。通常我们采用事前分析估算的方法—渐进复杂度。

0 0
原创粉丝点击