您的位置:首页 > 理论基础 > 数据结构算法

数据结构绪论

2015-12-06 00:55 441 查看
数据项:数据结构中讨论的最小单位
数据元素:数据结构的基本单位,不是最小单位
数据元素是数据项的集合

数据结构:带结构的数据元素的集合

逻辑结构:
1、线性结构
2、树形结构
3、图状结构
4、集合

存储结构:逻辑结构在存储器中的映像
1、顺序映像
2、链式映像:以附加信息(指针)表示后继关系
3、索引存储:建立附加的索引表
4、散列存储:关键字计算,hash存储,散列存储实质上是顺序表的扩展

数据类型:数据结构和定义在这个数据结构上的操作的总称

ADT(数据对象,数据关系,基本操作)
(D, S, T)

算法和算法的衡量:
1、算法的五个特性:
有穷性(有穷时间、有穷步骤)
确定性(算法操作有确切规定,明确执行)
可行性(所有操作足够基本)
有输入
有输出

2、算法设计的原则:
正确性
可读性
健壮性(鲁棒性)处理出错的方法不应是中断程序的执行,而应是返回一个表示错误或错误性质的值,以便在更高的抽象层次上进
行处理。
高效率与低存储量的需求

3、算法效率的衡量方法:
事后统计法
事前分析估算法

4、与算法执行时间相关的因素:
算法的策略
问题规模
程序语言
编译出的机器代码的质量(编译器的选择)
计算机执行的速度

5、算法的存储包括:
输入数据所占空间
程序本身所占空间
辅助变量所占空间
若输入数据所占空间只取决于问题本身,和算法无关时,只需要分析辅助变量所占额外空间。
若所需辅助空间为常量,则此算法为原地工作。

6、渐进时间复杂度:
O(1)<O(logn)<O(n)<O(nlogn)<O(n2)<O(n3)<O(2n)<O(n!)<O(nn)

练习:
1、一个算法应该是问题求解步骤的描述
2、算法的时间复杂度取决于:问题的规模和待处理数据的初态
3、Data-Structure=(D,R)
Data-Type=(D,R,P)
D——数据对象 R——关系 P——基本操作
4、算法的计算量的大小称为计算的复杂性
计算复杂性理论所研究的资源中最常见的是时间复杂度和空间复杂度
5、即使是同一语言,在不同的编译环境下,其执行的效率也可能不同
6、循环队列是建立在顺序存储结构上的
7、多型就是数据元素的类型不确定
8、汉诺塔递归中,碟子为n个,时间复杂度为0(n!)
9、数据的物理结构,即,存储结构,包括数据元素的表示和关系的表示
10、抽象数据类型的定义仅取决于它的一组逻辑特性,而与在计算机内部如何表示和实现无关,即无论其内部结构如何变化,只要它的数学
特性不变,都不影响其外部的使用
11、不是每种数据结构都具有插入、删除、查找,栈和队列没有
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: