数据结构和算法
偶尔在网上闲逛,发现的一本开源的,优秀书籍,不过全是英文。有时间,有需求再读吧。
原目录: chalmersgu-data-structure-courses.github.io/OpenDSA/Pub…
第一章 简介
第 2 章 数组:搜索和排序
- 2.1. 章节简介:数组
- 2.2. 在数组中搜索
- 2.3. 章节简介:排序
- 2.4. 排序术语和符号
- 2.5. 插入排序
- 2.6. 冒泡排序(可选)
- 2.7. 选择排序
- 2.8. 交换排序的成本(可选)
- 2.9. 通过代码调整优化排序算法(可选)
- 2.10. 归并排序概念
- 2.11. 实施归并排序
- 2.12. 快速排序
- 2.13. 排序算法的实证比较
- 2.14. 排序下界(可选)
- 2.15. 数组作为集合或映射
- 2.16. 排序总结练习
第 3 章 算法分析
- 3.1. 章节简介:算法分析
- 3.2. 问题、算法和程序
- 3.3. 比较算法
- 3.4. 最好、最差和平均情况
- 3.5. 更快的计算机,还是更快的算法?
- 3.6. 渐近分析和上限
- 3.7. 下限和ΘΘ符号
- 3.8. 计算程序运行时间
- 3.9. 分析问题
- 3.10. 常见的误解
- 3.11. 多个参数
- 3.12. 空间界限
- 3.13. 代码调优和实证分析
- 3.14. 算法分析总结练习
- 3.15. 算法分析总结练习
- 3.16. 增长率审查(可选)(正在进行中)
- 3.17. 求和技术(可选)(正在进行中)
- 3.18. 求解递归关系(可选)(正在进行中)
- 3.19. 摊销分析(可选)(正在进行中)
第 4 章 线性结构
- 4.1. 章节简介:列表
- 4.2. 列表 ADT
- 4.3. 基于静态数组的列表
- 4.4. 基于动态数组的列表
- 4.5. 链表
- 4.6. 列表实现的比较
- 4.7. 使用列表实现地图
- 4.8. 双向链表(可选)
- 4.9. 基于动态数组的堆栈
- 4.10. 链接堆栈
- 4.11. 实现递归
- 4.12. 基于数组的队列
- 4.13. 链接队列
- 4.14. 线性结构总结练习
第 5 章 二叉树
- 5.1. 章节简介:二叉树
- 5.2. 二叉树
- 5.3. 作为递归数据结构的二叉树
- 5.4. 二叉树节点实现
- 5.5. 满二叉树定理(可选)
- 5.6. 二叉树遍历
- 5.7. 实现树遍历
- 5.8. 递归函数中的信息流
- 5.9. 二叉树空间要求(可选)
- 5.10. 多个二叉树(可选)
- 5.11. 硬信息流问题(可选)
- 5.12. 二叉树章节摘要
第 6 章 通用树和并查(可选)
第 7 章 搜索树
- 7.1. 章节简介:二叉搜索树
- 7.2. 二叉搜索树
- 7.3. 二叉树引导信息流
- 7.4. 平衡树
- 7.5. AVL 树
- 7.6. 红黑树(仅限代码)
- 7.7. 展开树(可选)
- 7.8. 跳过列表(可选)
- 7.9. 二叉搜索树章节摘要
第 8 章优先级队列
- 8.1. 优先队列
- 8.2. 完全二叉树的数组实现
- 8.3. 堆和优先级队列
- 8.4. 堆排序
- 8.5. 霍夫曼编码树(可选)
- 8.6. 树与尝试(可选)
- 8.7. 霍夫曼编码的最优性证明(可选)
- 8.8. 优先级队列章节摘要
第 9 章哈希表
- 9.1. 章节简介:哈希
- 9.2. 哈希函数原理
- 9.3. 哈希函数示例
- 9.4. 单独链接
- 9.5。将对象转换为表索引
- 9.6. 桶散列(可选)
- 9.7. 开放式寻址
- 9.8. 改进碰撞分辨率
- 9.9. 开放寻址分析
- 9.10。开放寻址、删除
- 9.11。现实生活中的哈希表(可选)
- 9.12. 哈希章节总结练习
第 10 章图表
- 10.1. 章节简介:图表
- 10.2. 图实现
- 10.3. 图遍历
- 10.4. 拓扑排序
- 10.5. 最短路径问题
- 10.6. 最小成本生成树
- 10.7. 克鲁斯卡尔算法
- 10.8. 全对最短路径(可选)
- 10.9. 图概念总结
第 11 章计算限制(可选)
- 11.1. 计算限制(可选)(正在进行中)
- 11.2. 减少(可选)(正在进行中)
- 11.3. NP-完整性(可选)(正在进行中)
- 11.4. 电路满意度(可选)(正在进行中)
- 11.5. 公式可满足性(可选)(正在进行中)
- 11.6. 3-CNF 满意度(可选)(正在进行中)
- 11.7. 派系问题(可选)(正在进行中)
- 11.8. 独立集问题(可选)(正在进行中)
- 11.9. 顶点覆盖问题(可选)(正在进行中)
- 11.10. 哈密顿循环问题(可选)(正在进行中)
- 11.11. 旅行商问题(可选)(正在进行中)
- 11.12. NP 完整性证明(可选)(正在进行中)
- 11.13. 将电路 SAT 缩减为 SAT(可选)(正在进行中)
- 11.14. 将 SAT 降低为 3-SAT(可选)(正在进行中)
- 11.15. 将 3-SAT 简化为 Clique(可选)(正在进行中)
- 11.16. 将集团减少为独立集(可选)(正在进行中)
- 11.17. 将独立集减少到顶点覆盖(可选)(正在进行中)
- 11.18. 将 3-SAT 还原为哈密顿循环(可选)(正在进行中)
- 11.19. 将哈密顿循环简化为旅行推销员(可选)(正在进行中)
- 11.20. 处理 NP 完全问题(可选)(正在进行中)
- 11.21. 无法解决的问题(可选)(正在进行中)
- 11.22. 图灵机(可选)(正在进行中)