高级算法 (Spring 2026)/作业1: Difference between revisions

From TCS Wiki
Jump to navigation Jump to search
Liumingmou (talk | contribs)
No edit summary
Liumingmou (talk | contribs)
No edit summary
 
Line 6: Line 6:
# Karp-Rabin Algorithm 使用一个 equality testing 算法作为黑盒子以达成 <math>O(m+n)</math> 的时间复杂度。分别讨论用本门课中介绍的其他 equality testing 算法替代 Karp-Rabin Algorithm 的 equality testing 算法能否达成 <math>O(m+n)</math> 的时间复杂度,并自己找到一个没有在本门课中出现的 equality testing 算法(你需要使用正规 citation 指出该算法的来源),尝试用它替换 Karp-Rabin Algorithm 的 equality testing 算法,你需要尽可能完备地说明为什么能或者不可能达成 <math>O(m+n)</math> 的时间复杂度。
# Karp-Rabin Algorithm 使用一个 equality testing 算法作为黑盒子以达成 <math>O(m+n)</math> 的时间复杂度。分别讨论用本门课中介绍的其他 equality testing 算法替代 Karp-Rabin Algorithm 的 equality testing 算法能否达成 <math>O(m+n)</math> 的时间复杂度,并自己找到一个没有在本门课中出现的 equality testing 算法(你需要使用正规 citation 指出该算法的来源),尝试用它替换 Karp-Rabin Algorithm 的 equality testing 算法,你需要尽可能完备地说明为什么能或者不可能达成 <math>O(m+n)</math> 的时间复杂度。
# 解释 Morris’ counter 背后的直觉。尝试应用 <math>(1+\alpha)^{-X}</math> 的思路得到更好的结果。
# 解释 Morris’ counter 背后的直觉。尝试应用 <math>(1+\alpha)^{-X}</math> 的思路得到更好的结果。
# 使用 median trick 来优化 min sketch 和 Flajolet-Martin Algorithm。
# 使用 median trick 来优化 min sketch 和 Flajolet-Martin Algorithm 和 Bottom-k algorithm。

Latest revision as of 08:38, 15 March 2026

  • 每道题目的解答都要有完整的解题过程,中英文不限。
  • 我们推荐大家使用LaTeX, markdown等对作业进行排版。
  • 没有条件的同学可以用纸笔完成作业之后拍照。
  • 本门课的所有作业中如果出现了课程中(包括课件中和作业题目中)的算法或者概念或者符号,则禁止使用自己发明的说法或者符号,必须与课程内容保持一致。
  1. Karp-Rabin Algorithm 使用一个 equality testing 算法作为黑盒子以达成 [math]\displaystyle{ O(m+n) }[/math] 的时间复杂度。分别讨论用本门课中介绍的其他 equality testing 算法替代 Karp-Rabin Algorithm 的 equality testing 算法能否达成 [math]\displaystyle{ O(m+n) }[/math] 的时间复杂度,并自己找到一个没有在本门课中出现的 equality testing 算法(你需要使用正规 citation 指出该算法的来源),尝试用它替换 Karp-Rabin Algorithm 的 equality testing 算法,你需要尽可能完备地说明为什么能或者不可能达成 [math]\displaystyle{ O(m+n) }[/math] 的时间复杂度。
  2. 解释 Morris’ counter 背后的直觉。尝试应用 [math]\displaystyle{ (1+\alpha)^{-X} }[/math] 的思路得到更好的结果。
  3. 使用 median trick 来优化 min sketch 和 Flajolet-Martin Algorithm 和 Bottom-k algorithm。