- 1.1.1]--101)引子:数据时代
- [1.2.1]--102)问题求解的计算之道
- [1.3.1]--103)图灵机计算模型
- [1.4.1]--104)算法和计算复杂性
- [1.5.1]--105)突破计算极限
- [1.6.1]--106)什么是抽象和实现
- [1.7.1]--107)为什么研究数据结构与算法
- [2.1.1]--201)什么是算法分析
- [2.2.1]--202)大O表示法
- [2.3.1]--203)“变位词”判断问题(上)
- [2.4.1]--204)“变位词”判断问题(下)
- [2.5.1]--205)Python数据类型的性能(上)
- [2.6.1]--206)Python数据类型的性能(下)
- [3.1.1]--301)什么是线性结构
- [3.2.1]--302)栈抽象数据类型及Python实现
- [3.3.1]--303)栈的应用:简单括号匹配
- [3.4.1]--304)栈的应用:十进制转换为二进制
- [3.5.1]--305)栈的应用:表达式转换(上)
- [3.6.1]--306)栈的应用:表达式转换(下)
- [3.7.1]--307)栈的应用:后缀表达式求值
- [4.1.1]--308队列抽象数据类型及Python实现
- [4.2.1]--309队列的应用:热土豆
- [4.3.1]--310队列的应用:打印任务(上)
- [4.4.1]--311队列的应用:打印任务(下)
- [4.5.1]--312双端队列抽象数据类型及Python实现+回文词判定
- [4.6.1]--313无序表抽象数据类型及Python实现
- [4.7.1]--314无序表的链表实现
- [4.8.1]--315有序表抽象数据类型及Python实现
- [4.9.1]--316线性结构小结
- [5.1.1]--401什么是递归
- [5.2.1]--402递归的应用:任意进制转换
- [5.3.1]--403递归调用的实现
- [5.4.1]--404递归可视化:分形树
- [5.5.1]--405递归可视化:谢尔宾斯基三角
- [5.6.1]--406递归的应用:汉诺塔
- [5.7.1]--407递归的应用:探索迷宫
- [5.7.2]--海龟探索迷宫过程演示
- [5.8.1]--第1次直播答疑
- [6.1.1]--408分治策略
- [6.2.1]--409优化问题和贪心策略
- [6.3.1]--410找零兑换问题的递归解法
- [6.4.1]--411找零兑换问题的动态规划解法
- [6.5.1]--412动态规划案例分析
- [6.6.1]--413递归小结
- [7.1.1]--501顺序查找算法及分析
- [7.2.1]--502二分查找算法及分析
- [7.3.1]--503冒泡和选择排序算法及分析
- [7.4.1]--504插入排序算法及分析
- [7.5.1]--505谢尔排序算法及分析
- [7.6.1]--506归并排序算法及分析
- [7.7.1]--507快速排序算法及分析
- [8.1.1]--508什么是散列
- [8.2.1]--509完美散列函数
- [8.3.1]--510区块链技术
- [8.4.1]--511散列函数设计
- [8.5.1]--512冲突解决方案
- [8.6.1]--513映射抽象数据类型及Python实现
- [8.7.1]--514排序与查找小结
- [9.1.1]--601什么是树
- [9.2.1]--602树结构相关术语
- [9.3.1]--603树的嵌套列表实现
- [9.4.1]--604树的链表实现
- [9.5.1]--605树的应用:表达式解析(上)
- [9.6.1]--606树的应用:表达式解析(下)
- [9.7.1]--607树的遍历
- [9.8.1]--608优先队列和二叉堆
- [9.9.1]--609二叉堆的Python实现
- [10.1.1]--610二叉查找树及操作
- [10.2.1]--611二叉查找树实现及算法分析(上)
- [10.3.1]--612二叉查找树实现及算法分析(下)
- [10.4.1]--613AVL树的定义和性能
- [10.5.1]--614AVL树的Python实现
- [10.6.1]--615树结构小结
- [11.1.1]--701图的基本概念及相关术语
- [11.2.1]--702图抽象数据类型
- [11.3.1]--703图抽象数据类型的Python实现
- [11.4.1]--704图的应用:词梯问题
- [11.5.1]--705实现广度优先搜索
- [11.6.1]--706图的应用:骑士周游问题
- [11.7.1]--707骑士周游问题算法实现
- [11.8.1]--708骑士周游问题算法分析与改进
- [12.1.1]--709通用的深度优先搜索
- [12.2.1]--710图的应用:拓扑排序
- [12.3.1]--711图的应用:强连通分支
- [12.4.1]--712图的应用:最短路径
- [12.5.1]--713图的应用:最小生成树
- [12.6.1]--714图结构小结
“数据结构”在计算机科学中是一门非常重要的综合性的专业基础课,其内容丰富,涉及面广泛,随着计算机应用技术的发展,数据结构的内容也随之更新。《数据结构》作为一门独立的课程最早是在美国的一些大学开设的,1968年美国Donald E.Knuth教授开创了数据结构的最初体系;在我国,自1978年美籍华裔学者冀中田在国内首开这门课程以来,经过20余年的发展,这门课程已经成为各大学计算机专业的本科主干课程,也成为非计算机类学生和研究生学习计算机的必修课程。
《数据结构》是计算机程序设计的重要理论技术基础,也是计算机学科的核心课程。其教学要求是:学会分析研究计算机加工的数据结构的特性,以便为应用涉及的数据选择适当的逻辑结构、存储结构以及相应的算法,并初步掌握算法的时间分析和空间分析技术。另一方面,本课程的学习过程也是复杂程序设计的训练过程,是对学生的数据抽象能力的培养过程。
