不要因为现实的平凡,就否定了那华丽的梦想!
|
数据结构与算法Python版
课程《数据结构与算法Python版》基于北京大学多年教学实践,专为具备Python编程基础的学习者设计,旨在系统讲解常见的数据结构和经典算法。课程围绕“算法+数据结构=程序”的核心理念,通过分析问题、抽象数据、设计算法的流程,帮助学生提升理论思维和编程实践能力。内容涵盖线性结构、递归与动态规划、排序与查找、树与图等重要知识点,并通过丰富的案例和编程练习,引导学生掌握高效算法的设计与实现,提升解决实际问题的能力。
⭐⭐⭐
具备基本的Python语言程序
设计能力
语音 | 字幕 | |
---|---|---|
中文 | ✅ | ✅ |
英文 | ❌ | ❌ |
无
1. 引子:数据时代
2. 问题求解的计算之道
3. 图灵机计算模型
4. 算法和计算复杂性
5. 突破计算极限
6. 什么是抽象和实现
7. 为什么研究数据结构与算法
8. 从C转换到Python #01
9. 从C转换到Python #02
10. 从C转换到Python #03
11. 从C转换到Python #04
12. 什么是算法分析
13. 大O表示法
14. “变位词”判断问题(上)
15. “变位词”判断问题(下)
16. Python数据类型的性能(上)
17. Python数据类型的性能(下)
18. 怎么做用Python在线评测OJ作业
19. 什么是线性结构
20. 栈抽象数据类型及Python实现
21. 栈的应用:简单括号匹配
22. 栈的应用:十进制转换为二进制
23. 栈的应用:表达式转换(上)
24. 栈的应用:表达式转换(下)
25. 栈的应用:后缀表达式求值
26. 队列抽象数据类型及Python实现
27. 队列的应用:热土豆
28. 队列的应用:打印任务
29. 队列的应用:打印任务
30. 双端队列抽象数据类型及Python实现+回文词判定
31. 无序表抽象数据类型及Python实现
32. 无序表抽象链表实现
33. 有序表抽象数据类型及Python实现
34. 线性结构小结
35. 什么是递归
36. 递归的应用:任意进制转换
37. 递归调用如何实现
38. 递归可视化:分形树
39. 递归可视化:谢尔宾斯基三角
40. 递归的应用:汉诺塔
41. 递归的应用:探索迷宫
42. 海龟探索迷宫过程演示
43. 分治策略
44. 优化问题贪心策略
45. 找零找最少问题的递归解决法
46. 找零找最少问题的动态规划解决法
47. 动态规划案例分析
48. 递归小结
49. 顺序查找算法及分析
50. 二分查找算法及分析
51. 冒泡和选择排序算法及分析
52. 插入排序算法及分析
53. 希尔排序算法及分析
54. 归并排序算法及分析
55. 快速排序算法及分析
56. 什么是散列
57. 完美散列函数
58. 区块链技术
59. 散列函数设计
60. 冲突解决方案
61. 映射抽象数据类型及Python实现
62. 排序与查找小结
63. 什么是树
64. 树结构相关术语
65. 树的链表实现
66. 树的链表实现
67. 树的应用:表达式解析(上)
68. 树的应用:表达式解析(下)
69. 树的遍历
70. 优先队列和二叉堆
71. 二叉堆的Python实现
72. 二叉查找树及操作
73. 二叉查找树实现及分析(上)
74. 二叉查找树实现及分析(下)
75. AVL树的定义和性能
76. AVL树的Python实现
77. 树结构小结
78. 图的基本概念及相关术语
79. 图抽象数据类型
80. 图抽象数据类型的Python实现
81. 图的应用:词梯问题
82. 实现广度优先搜索
83. 图的应用:骑士问题
84. 骑士问题算法的实现
85. 骑士问题算法分析与改进
86. 通用的深度优先搜索
87. 图的应用:拓扑排序
88. 图的应用:最短通分支
89. 图的应用:最短路径
90. 图的应用:最小生成树
91. 图结构小结