教学周次 日期 教学内容 作业
1 2024-2-27 什么是算法?怎样证明算法是正确的?
讲义:教学大纲实施细则, KL教学平台使用手册, 算法与算法分析
A+B Problem (1), A*B Problem (1), A+B Problem (2), A*B Problem (2)
2 2024-3-5 几个使用数学归纳法的例子、算法的计算复杂性 最长无重复字符的子串, 书面作业1
3 2024-3-12 算法的计算复杂性、函数的渐近增长与排序算法 第1周作业截止
4 2024-3-19 主定理、主定理的直观理解
讲义:复杂度的渐进表示
第2周作业截止, 书面作业2
5 2024-3-26 一些用于热身的问题
讲义:一些用于热身的问题
2-Sum (2), 除法计算器, 全组合生成, 大数比较问题, 合法三连珠棋局面
6 2024-4-2 分治策略(1):二分查找、牛顿迭代、快速幂
讲义:分治策略
第4周作业截止, 书面作业3, 立方根问题, 切蛋糕问题, 小兔登台阶, 计数问题, A / B Problem (2)
7 2024-4-9 分治策略(2):快速排序、选择无序数组中的第k小问题 第5周作业截止
8 2024-4-16 动态规划(1):切钢条问题、0-1背包问题、最长上升子序列问题、最大子数组和问题
讲义:动态规划
书面作业4, 小偷问题 (1), 小偷问题 (2), 合唱队型, 最大子矩阵和, 勤工助学 (1), 书架问题
9 2024-4-23 动态规划(2):最长公共子序列问题、最短编辑距离问题 最短编辑距离问题 (2), 通配符匹配问题 (1) , 通配符匹配问题 (2) , 愚公移山 (1), 愚公移山 (2)
10 2024-4-30 动态规划(3):配对问题、矩阵连乘问题 第8周作业截止, 书面作业5, 糖果
11 2024-5-7 贪婪策略
讲义:贪婪策略
第9周作业截止, 类别限制的选取问题, 勤工助学 (2), 最多偶数拆分问题, 股票买卖问题
12 2024-5-14 图算法(1):深度优先搜索、广度优先搜索、拓扑排序(选讲)
讲义:图算法
第10周作业截止, 书面作业6
13 2024-5-21 回溯与分支限界
讲义:回溯与分支限界
第11周作业截止, 长方形填充问题, 有多少个水洼?, 内陆的水洼干涸了, 组合总和, 麻将胡牌了吗?
14 2024-5-28 图算法(2):最短路问题、最小生成树问题(选讲) 第12周作业截止, 书面作业7
15 2024-6-4 计算复杂性理论
讲义:计算复杂性理论
第13周作业截止
16 2024-6-11 线性规划:松弛形与单纯形、使用软件求解线性规划问题
讲义:线性规划
第14周作业截止