目录
- 第一章
- 绪论
- 概念
- 数据结构三要素
- 小结
- 算法
- 概念
- 时间复杂度
- 练习
- 空间复杂度
- 第二章:线性表
- 顺序表
- 1.概念
- 2.顺序存储
- 3.插入、删除
- 插入
- 删除
- 4.查找
- 1.按位查找
- 2.按值查找
- 链表
- 1.单链表
- 1.定义
- 2.插入、删除
- 1.按位序插入
- 2.后插(指定节点后插)
- 3.前插
- 4.删除(按位序)
- 5.删除(指定节点)
- 6.总结
- 3.查找
- 1.按位查找
- 封装
- 2.按值查找
- 3.求表长
第一章
绪论
概念
- 数据元素、数据项
- 数据结构、数据对象
数据结构三要素
- 运算
小结
算法
概念
时间复杂度
练习
空间复杂度
- 递归
第二章:线性表
顺序表
1.概念
- 线性表: 各个元素 相同数据类型, 有限、有序
- 带回来 引用&
2.顺序存储
- 用顺序存储实现线性表
- length = 0
3.插入、删除
插入
- 后面的元素往后移动 直到 i,因为 i - 1 会与 i 元素交换,虽然是位序还是能执行到 i - 1
- 记得 表长 + 1
- 完整代码
- 判断 位序 i 是否合法
- 表 满了吗
- 复杂度
- (表尾 + 1 也可以插入 1 / len+1 )
删除
1.代码
- 后面的元素 往前移
- 表长 - 1
2.复杂度
3.总结
4.查找
1.按位查找
- 静态分配方式
- 动态分配方式
- 复杂度
2.按值查找
- 代码
- 结构体变量时
3. 复杂度
- 总结
链表
1.单链表
1.定义
- 初始化链表(不带头节点)
- 初始化(带头节点)
- 区别
总结
2.插入、删除
1.按位序插入
- 插入(带头)
- 代码
- 插入操作,可以用后面的后插(指定节点插入)
- 插入(不带头)
- 不带头注意
1.插入 第一位时
2.i 从第一 1 个节点开始
2.后插(指定节点后插)
- 封装前面的 按位序插入
3.前插
通过头指针,找到 i 前驱节点
(只换数据)
- 王道书
4.删除(按位序)
- 最后释放
5.删除(指定节点)
- 此方法不能处理最后一个节点(有bug)
6.总结
3.查找
1.按位查找
封装
2.按值查找
3.求表长
- 总结