数据结构与算法实战
数据结构与算法实战
2万+ 人选课
更新日期:2026/06/11
开课平台爱课程(中国大学MOOC)
开课高校青岛大学
开课教师周强王卓陈宇
学科专业工学计算机类
开课时间2021/09/13 - 2023/04/02
课程周期81 周
开课状态已结课
每周学时-
课程简介

本课程是计算机类专业的主干基础课程,也可供其他专业学生选修。

本课程用C、C++、Java、Python四种语言授课,修过其中一门即可修读本课程。对于关键的数据结构与算法知识点,讲授多种语言的实现方式,对其他部分知识点,给出4种语言的实现代码供学生自学。在讲授过程中,引导学生理解不同语言的差异并领悟不同语言的共性,将“计算思维”融进课程,最终可让学生理解“程序设计语言只是一样工具”,编写程序时不受限于特定语言。

本课程抓住学生“动手编程困难”的痛点,在讲授数据结构与算法理论知识的基础上,重点强调实践,带领学生一行一行编写代码,将“产生思路——编写程序——运行调试”的全过程展示给学生,将算法思想和程序设计规范融入到讲授过程中,让学生有沉浸式体验。在讲授过程中,将带领学生共同寻找思路解决问题,将与学生一起遇到并修改常见错误。本课程强调过程化考核,针对程序设计的特点,设置了在线评测的习题集和测验题集,给学生提供了充足的动手实践编程的机会。在完成本课程学习后,学生将由“纸上谈兵”型转变为“实战”型,为成为合格的软件工程师和算法工程师打好坚实基础。

课程大纲

1-预备知识 [01:50:21 18段]

1-1-课程简介与基本概念 [1段 共00:04:01]

1-2-用什么语言 [7段 共00:40:37]

1-3-模板与泛型 [4段 共00:27:07]

1-4-函数与递归 [6段 共00:38:36]

资料与测验

2-数组与字符串 [02:49:24 30段]

2-1-数组 [9段 共01:12:33]

2-2-二维数组 [8段 共01:02:13]

2-3-字符串 [13段 共00:34:38]

资料与测验

3-线性结构 [05:20:03 47段]

3-1 顺序表 [8段 共00:56:34]

3-2 链表 [11段 共01:35:57]

3-3 栈 [12段 共01:04:45]

3-4 队列 [16段 共01:42:47]

资料与测验

4-树 [06:06:32 35段]

4-1 二叉树及遍历[19段 共02:56:20]

4-2 二叉搜索树[9段 共01:47:14]

4-3 平衡二叉树[7段 共01:22:58]

资料与测验

5-优先队列与集合 [04:32:40 34段]

5-3 不相交集(Disjoint Set)[11段 共01:56:23]

资料与测验

5-1 优先队列 [18段 共02:17:58]

5-2 集合 [5段 共00:18:19]

6-查找与散列 [01:54:29 11段]

6-1 常用查找方法 [1段 共00:15:05]

6-2 散列 [10段 共01:39:24]

资料与测验

7-排序 [05:37:14 30段]

7-1 基本指标 [1段 00:04:58]

7-2 简单排序 [5段 共00:57:09]

7-3 希尔排序 [1段 00:06:15]

7-4 堆排序 [2段 共00:31:10]

7-5 分治法 [10段 共01:38:24]

7-6 排序算法的一般下界[1段 00:04:43]

7-7 桶排序与基数排序 [2段 共00:22:50]

7-8 外部排序 [1段 00:06:52]

7-9 各语言实现排序 [7段 共01:44:53]

资料与测验

8-图 [07:59:45 41段]

8-1 图的概念 [1段 00:14:33]

8-2 图的表示 [15段 02:52:47]

8-3 图的遍历(搜索) [8段 01:42:35]

8-4 拓扑排序 [4段 00:34:59]

8-5 最短路径 [8段 01:41:22]

8-6 最小生成树 [5段 00:53:29]

资料与测验

9-算法设计 [02:38:25 13段]

9-1 贪心法 [3段 00:39:03]

9-2 回溯法 [3段 00:48:31]

9-3 分治法 [2段 00:18:39]

9-4 动态规划法 [5段 00:52:12]

资料与测验

App 下载
关注我们