技术实践 #ASR#Markdown

样例与时间

我用算法设计与分析 2026 年 4 月 2 日的分治法课程,介绍自己怎样结合课堂转录和课件整理笔记。这一章的笔记整理于 2026 年 5 月 7 日,包含 27 张配图。

1. 从已有转录取出一段解释

下文节选自原有转录第 [6] 段,保留机器识别原文中的表达,展示算法讨论部分:

它实际上就把这个子问题的个数从四变成了三,这样的话来提高我们的算法的一个效率。……这个式子带进来,那前面的话这个地方是 a 乘 c……这个子问题只是重复了,不代表出现了新的子问题。

这段解释帮助我抓住课堂讨论的重点:减少的是不同的递归乘法,已经计算的结果可以复用。

2. 把转录映射到课件

既有 ASR 概述为各段记录课件页码。以下节选只保留知识主题:

转录段落课件页码内容
[4]—[5]Ch5 P2—P5分治法框架
[5]—[10]Ch5 P6—P11Karatsuba 大整数乘法
[12]—[14]Ch5 P12—P17Strassen 矩阵乘法

页码映射使整理结果可以回查到具体来源。

原有笔记引用的课件 P7:大整数分治拆分
原有笔记引用的课件 P7:大整数分治拆分

来源:《算法设计与分析》Ch5 Divide and Conquer 课件 P7。

3. 从解释到结构化笔记

现有笔记按问题、拆分、展开、子问题数、递推式和实现约束组织内容。以下摘录保留其中的核心推导:

关键洞察:能否把 4 次乘法减少到 3 次?

注意到:

(A+B)(C+D)=AC+AD+BC+BD(A+B)(C+D)=AC+AD+BC+BD

因此:

AD+BC=(A+B)(C+D)−AC−BDAD+BC=(A+B)(C+D)-AC-BD

这样只需要计算三次乘法:AC、BD、(A+B)(C+D),代价是增加线性加减法。

T(n)=3T(n/2)+O(n)=Θ(nlog⁡23)T(n)=3T(n/2)+O(n)=\Theta(n^{\log_2 3})

章节笔记后续还讨论表示、进位和长度不齐等实现问题,把公式与实际编程约束连接起来。

从课堂解释到自己的笔记

我把课堂转录、课件页码和笔记保留在同一条整理过程中。AI 按规范串联工具、理解讲解和组织内容,我通过阅读、追问和使用继续调整。需要回看一个知识点时,也能找到对应的课堂解释和课件。