参考网课数据结构-青岛大学-王卓-第一周
参考书籍《数据结构C语言版第二版》 中国工信出版集团 人民邮电出版社出版 严蔚敏 编著
”程序=数据结构+算法”
课程总览
1绪论
数据结构,逻辑结构,储存结构,抽象数据类型
- 数据结构:是相互之间存在一种或多种特定关系的数据元素的集合
- 逻辑结构
- 线性
- 非线性
- 储存结构
- 顺序,靠地址连续性
- 链式,靠指针连接
- 逻辑结构
抽象数据类型:一般指由用户定义的、表示应用问题的数学模型,以及定义在这个模型上的一组操作的总称。主要包括下面三个部分(详见定义格式)
定义格式如下:
ADT 抽象数据类型名{
数据对象: 数据对象的定义
数据关系: 数据关系的定义
基本操作: 基本操作的定义
}ADT 抽象数据类型名
算法
- 有穷性
- 必须有输出
- 可以没有输入
- 确定性(没有歧义)
- 可通过基本运算实现
算法设计的要求
- 正确性
- 精心挑选的典型,刁难数据验证
- 可以类比IMO的‘过点’
- 可读性
- 避免隐藏的错误
- 健壮性
- 非法数据处理
- 高效性
- 快,准,少存储需求
算法时间复杂度的计算
再只考虑数量级即可: 时间复杂度往往由嵌套程度最深的决定 时间复杂度:
算法空间复杂度
在第一种情况下; 常数阶,又称原地工作