算法:聪明人的计算艺术

Last updated on May 5, 2025 pm

这是算法系列博客的开篇介绍,基于上海交通大学AI2615《算法设计与分析》课程的学习历程与深度思考。

导言:我的算法认知进化史

“任何足够复杂的技术都与魔法无异” —— 克拉克第三定律

本人并非信息竞赛选手,但从小一直非常羡慕身边的信竞生,时常听闻他们讨论各种算法和题目,觉得非常厉害。毕竟在我的经验中,似乎只有最聪明的同学才会学习算法,参加信竞。

但是进入大学,我也选择了计算机专业,接触到各种算法,这学期正在修读张宇昊老师的算法设计与分析课程。几节课后,我发现我的经验没错——学习算法确实需要聪明!但算法远不止于此。

中学时我曾参加过化学竞赛,当时有一本经典的有机教材,叫做Art(有机反应机理的书写艺术)。但这次,每当张老师介绍前人如何设计和改进出巧妙的算法,大幅缩减计算规模时,我常常感叹,算法何尝不是一种艺术

系列内容

在这个系列中,我将基于AI2615课程,整理我的算法学习笔记和思考心得,并加以可视化。我们将主要着眼于算法的设计和理论分析,而不是代码实现

  • 对于较为简单的部分,我可能一笔带过。
  • 对于重点或难点的算法,我会写得尽可能详细。

路线图

本系列将按照AI2615的课程内容展开,主要部分为:

  • 分治法(Divide and Conquer)
  • 图(Graphs)
  • 贪心算法(Greedy)
  • 动态规划(Dynamic Programming)
  • 网络最大流(Max Flow)
  • NP-hard问题(NP-hardness)

希望我的博客能对你们学习算法有所帮助,或是能给同样在学这门课的同学一个期末复习提纲,感谢大家的支持。


算法:聪明人的计算艺术
https://cny123222.github.io/2025/03/11/算法:聪明人的计算艺术/
Author
Nuoyan Chen
Posted on
March 11, 2025
Licensed under