MOOC 数据结构与算法PYTHON版(北京大学)

本课基于主讲教师在北京大学讲授数据结构与算法课(版)的多年教学实践经验,面向具有Python语言程序设计基础的大学生和社会公众,介绍常见的基本数据结构以及相关经典算法,强调问题-数据-算法的抽象过程,关注数据结构与算法的时间空间效率,培养学生编写出高效程序,具备解决问题的综合能力。

课程概述

本课基于主讲教师在北京大学讲授数据结构与算法课(Python版)的多年教学实践经验,面向具有Python语言程序设计基础的大学生和社会公众,介绍常见的基本数据结构以及相关经典算法,强调问题-数据-算法的抽象过程,关注数据结构与算法的时间空间效率,培养学生编写出高效程序,从而解决实际问题的综合能力。

本课内容包括课程概述、、基本线性结构、与动态规划、与查找、树及其算法、图及其算法等。课程将围绕着“算法+数据结构=程序”的思路,以问题求解为导向进行学习,帮助学生提高理论、抽象、设计的能力。

本课注重数据结构与算法的实践与应用,在课程中穿插了生动案例和编程练习,引导学生积极建立数据抽象和层次分析的思维模式,通过解决实际问题来加深对数据组织结构和相应处理算法的学习体会,并学会通过实际应用情况来权衡时空和其它资源开销,达到最优的应用效果。

 授课目标

本课注重数据结构与算法的实践与应用,在课程中穿插了生动案例和编程练习,引导学生积极建立数据抽象和层次分析的思维模式,通过解决实际问题来加深对数据组织结构和相应处理算法的学习体会,并学会通过实际应用情况来权衡时空和其它资源开销,达到最优的应用效果。

 课程大纲

一、概述

101 引子: 9m53s

102 问题求解的计算之道 12m20s

103 图灵机计算模型 14m49s

104 算法和计算复杂性 14m28s

105 突破计算极限 9m08s

106 什么是抽象和实现 9m00s

107 为什么研究数据结构与算法 10m02s

108 从C转换到Python

第一周测验

二、

201 什么是算法分析 16m49s

202 大O表示法 13m06s

203 “变位词”判断问题(上) 10m27s

204 “变位词”判断问题(下) 9m54s

205 Python数据类型的性能(上) 12m37s

206 Python数据类型的性能(下) 10m18s

三、基本结构(上)

301 什么是线性结构 6m59s

302 栈抽象数据类型及Python实现 10m14s

303 栈的应用:简单括号匹配 11m19s

304 栈的应用:十进制转换为二进制 9m34s

305 表达式转换(上) 11m24s

306 表达式转换(下) 12m36s

307 后缀表达式求值 8m18s

四、基本结构(下)

308 抽象数据类型及Python实现 10m01s

309 的应用:热土豆 7m52s

310 队列的应用:打印任务(上) 7m37s

311 队列的应用:打印任务(下) 17m23s

312 双端队列抽象数据类型及Python实现+回文词判定 7m25s

313 无序表抽象数据类型及Python实现 11m03s

314 无序表的链表实现 12m54s

315 有序表抽象数据类型及Python实现 13m14s

316 线性结构小结 6m08s

五、(上)

401 什么是递归 13m20s

402 递归的应用:任意进制转换 6m32s

403 递归调用的实现 8m32s

404 递归可视化:分形树 10m54s

405 递归可视化:谢尔宾斯基三角 10m31s

406 递归的应用:汉诺塔 10m37s

407 递归的应用:探索迷宫 16m35s

六、递归(下)

408 分治策略 5m34s

409 优化问题和贪心策略 7m49s

410 找零兑换问题的递归解法 12m32s

411 找零兑换问题的动态规划解法 13m26s

412 动态规划案例分析 17m53s

413 递归小结 6m51s

七、与查找(上)

501 顺序查找算法及分析 9m41s

502 二分查找算法及分析 12m20s

503 冒泡和选择排序算法及分析 12m14s

504 插入排序算法及分析 7m06s

505 谢尔排序算法及分析 6m15s

506 归并排序算法及分析 9m13s

507 快速排序算法及分析 12m30s

八、排序与查找(下)

508 什么是散列 7m21s

509 完美散列函数 15m02s

510 区块链技术 17m20s

511 散列函数设计 8m47s

512 冲突解决方案 11m59s

513 映射抽象数据类型及Python实现 14m58s

514 排序与查找小结 9m45s

第八周测验

第八周作业

九、树及算法(上)

601 什么是树 8m37s

602 树结构相关术语 8m23s

603 树的嵌套列表实现 11m00s

604 树的链表实现 6m57s

605 树的应用:表达式解析(上) 13m03s

606 树的应用:表达式解析(下) 15m15s

607 树的遍历 10m11s

608 优先队列和二叉堆 11m45s

609 二叉堆的Python实现 13m14s

十、树及算法(下)

610 二叉查找树及操作 8m59s

611 二叉查找树实现及算法分析(上) 11m55s

612 二叉查找树实现及算法分析(下) 14m39s

613 AVL树的定义和性能 7m08s

614 AVL树的Python实现 20m04s

615 树结构小结 7m39s

十一、图及算法(上)

701 图的基本概念及相关术语 11m51s

702 图抽象数据类型 5m57s

703 图抽象数据类型的Python实现 5m26s

704 图的应用:词梯问题 8m20s

705 实现广度优先搜索 15m07s

706 图的应用:骑士周游问题 6m37s

707 骑士周游问题算法实现 7m56s

708 骑士周游问题算法分析与改进 8m45s

十二、图及算法(下)

709 通用的深度优先搜索 10m27s

710 图的应用:拓扑排序 9m30s

711 图的应用:强连通分支 11m16s

712 图的应用:最短路径 16m54s

713 图的应用:最小生成树 12m08s

714 图结构小结 6m33s

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。

最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件、阿里云盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络我们。

对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。

如果您已经成功付款但是网站没有弹出成功提示,请联系站长提供付款信息为您处理

源码素材属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好 是您所需要的资源