Introduction
1.介绍
1.1.目标
1.2.快速开始
1.3.什么是计算机科学
1.4.什么是编程
1.5.为什么要学习数据结构和抽象数据类型
1.6.为什么要学习算法
1.7.回顾Python基础
1.8.数据入门
1.9.输入和输出
1.10.控制结构
1.11.处理异常
1.12.定义函数
1.13.面向对象编程-定义类
1.14.总结
2.算法分析
2.1.目标
2.2.什么是算法分析
2.3.大O符号
2.4.一个乱序字符串检查的例子
2.5.Python数据结构的性能
2.6.列表
2.7.字典
2.8.总结
3.基本数据结构
3.1.目标
3.2.什么是线性数据结构
3.3.什么是栈
3.4.栈的抽象数据类型
3.5.Python实现栈
3.6.简单括号匹配
3.7.符号匹配
3.8.十进制转换成二进制
3.9.中缀前缀和后缀表达式
3.10.什么是队列
3.11.队列抽象数据类型
3.12.Python实现队列
3.13.模拟:烫手山芋
3.14.模拟:打印机
3.15.什么是Deque
3.16.Deque抽象数据类型
3.17.Python实现Deque
3.18.回文检查
3.19.列表
3.20.无序列表抽象数据类型
3.21.实现无序列表:链表
3.22.有序列表抽象数据结构
3.23.实现有序列表
3.24.总结
4.递归
4.1.目标
4.2.什么是递归
4.3.计算整数列表和
4.4.递归的三定律
4.5.整数转换为任意进制字符串
4.6.栈帧:实现递归
4.7.介绍:可视化递归
4.8.谢尔宾斯基三角形
4.10.汉诺塔游戏
4.11.探索迷宫
4.12.动态规划
4.13.总结
5.排序和搜索
5.1.目标
5.2.搜索
5.3.顺序查找
5.4.二分查找
5.5.Hash查找
5.6.排序
5.7.冒泡排序
5.8.选择排序
5.9.插入排序
5.10.希尔排序
5.11.归并排序
5.12.快速排序
5.13.总结
6.树和树的算法
6.1.目标
6.2.树的例子
6.3.词汇和定义
6.4.列表表示
6.5.节点表示
6.6.分析树
6.7.树的遍历
6.8.基于二叉堆的优先队列
6.9.二叉堆操作
6.10.二叉堆实现
6.11.二叉查找树
6.12.查找树操作
6.13.查找树实现
6.14.查找树分析
6.15.平衡二叉搜索树
6.16.AVL平衡二叉搜索树
6.17.AVL平衡二叉搜索树实现
6.18.Map抽象数据结构总结
6.19.总结
7.图和图的算法
7.1.目标
7.2.词汇和定义
7.3.图抽象数据类型
7.4.邻接矩阵
7.5.邻接表
7.6.实现
7.7.字梯的问题
7.8.构建字梯图
7.9.实现广度优先搜索
7.10.广度优先搜索分析
7.11.骑士之旅
7.12.构建骑士之旅图
7.13.实现骑士之旅
7.14.骑士之旅分析
7.15.通用深度优先搜索
7.16.深度优先搜索分析
7.17.拓扑排序
7.18.强连通分量
7.19.最短路径问题
7.20.Dijkstra算法
7.21.Dijkstra算法分析
7.22.Prim生成树算法
7.23.总结
Published with GitBook
1.14.总结
1.14.总结
计算机科学是解决问题的研究。
计算机科学使用抽象作为表示过程和数据的工具。
抽象的数据类型允许程序员通过隐藏数据的细节来管理问题领域的复杂性。
Python是一种强大但易于使用的面向对象语言。
列表、元组和字符串都是用Python有序集合构建的。
字典和集合是无序的数据集合。
类允许程序员实现抽象的数据类型。
程序员可以重写标准方法,并创建新的方法。
类可以被组织成层次结构。
类构造器应该总是调用其父节点的构造函数,然后继续使用自己的数据和行为。
results matching "
"
No results matching "
"