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