1.1 数据结构的基本概念
-
数据:输入到计算机能够被处理符号集合
-
数元:数据基本单位
-
数据对象:性质相同的数元集合
-
数据结构:表、树、图、窗口、管理器
-
数据类型:布尔型、整型(-32768~32767)、浮点型
-
定义域
-
操作数+-*/
-
原子类型(整型)、结构类型(指针)
-
数据抽象(ADT)
-
数据抽象
-
信息隐蔽
-
-
ADT包含定义和实现两个方面
1.2数据结构的内容
-
逻辑结构
-
集合结构
-
线性结构
-
树型结构
-
网状结构
-
-
存储结构:元素的表示和关系的表示
-
顺序存储(连续)
-
非顺序存储(任意配置)
-
-
运算集合
增删改查
总结:什么是数据结构
按照一定的逻辑关系组织起来的一批数据
按照一定的映像方式存放在计算机中
并在其上定义运算集
1.3算法设计
算法是规则的有限集合,是为解决特定问题而规定的一系列操作。
算法的特性
-
有限性 有限步骤之内正常结束,不能形成无穷循环
-
确定性 算法中的每一个步骤必须有确定含义,无二义性
-
输入有多个或0个输入
-
输出 至少有一个或多个输出
-
可行性 原则上能精确进行,操作可通过已实现的基本运算执行有限次而完成
算法设计的要求
-
算法的正确性
“正确”的含义大体上可以分为四个层次: (1)所设计的程序没有语法错误; (2)所设计的程序对于几组输入数据能够得出满足要求的结果; (3)所设计的程序对于精心选择的典型、苛刻而带有刁难性的几组输入数据能够得到满足要求的结果。 (4)程序对于一切合法的输入数据都能产生满足要求的结果。
-
可读性
一个好的算法首先应该便于人们理解和相互交流,其次才是机器可执行。
可读性好的算法有助于人对算法的理解,并且难懂的算法易于隐藏错误且难于调试和修改。
<