1、程序设计的一般过程
问题——想法——算法——程序
2、程序=数据结构+算法
3、本书讨论的内容:
(1)数据的逻辑结构
(2)数据的存储结构
(3)算法
(4)常用的数据处理技术
4、数据的基本概念
(1)数据是信息的载体,在计算机科学中是指所有能输入到计算机中并能被计算机程序识别和处理的符号集合。
(2)数据元素是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。
(3)数据结构是指相互之间存在一定关系的数据元素的集合。
(4)数据的逻辑结构是指数据元素之间逻辑关系的整体。(数据结构分为集合、线性结构、树结构、图结构)
(5)数据的存储结构又称为物理结构,是数据及其逻辑结构在计算机中的表示。
(6)数据类型是一组值的集合以及定义于这个值集上的一组操作的总称。
(7)抽象就是抽出问题本质的特征而忽略非本质的细节,是对具体事物的一个概括。
(8)抽象数据类型是一个数据结构以及定义在该结构上的一组操作的总称。
5、算法
(1)算法是指对特定问题求解步骤的一种描述,是指令的有限序列。
(2)算法的重要特性:输入、输出、有穷性、确定性、可行性
(3)“好”算法的特性:正确性、鲁棒性、简单性、抽象分级、高效性
6、算法的描述方法
(1)自然语言
(2)流程图
(3)程序设计语言
(4)伪代码
7、算法分析
(1)算法的时间性能
(2)算法的空间性能