算法是计算机科学的核心,在众多的计算机应用领域也充满了各种算法。算法设计与分析课程是计算机科学相关专业的专业必修课。课程的教学目标是培养学生分析问题和解决问题的能力,使学生掌握算法设计的基本技巧和方法,熟悉算法分析的基本技术,并能熟练运用一些常用算法策略解决一些较综合的问题。
掌握算法分析的基本方法以及算法设计的基本策略是一个计算机相关专业学生的必备素质。算法设计与分析的功底,是从事计算机相关的各种工作的坚实基础。算法基础也是许多IT企业面试的必考内容;此外,还有专门针对算法设计和编码的竞赛,比如,大学生ACM-ICPC竞赛等。可以说,算法设计与分析是计算机科学诸多领域的科学研究中所必须的技能。熟悉各种常用算法和算法设计策略,并且能够灵活运用是非常必要的。
在这门课中,会学习一些计算机科学领域及其应用领域中有代表性的、 被实践证明行之有效的算法设计方法,包括分治法、动态规划、回溯法、分支限界法以及贪心法这五类经典算法;学习如何应用这些算法设计方法去求解经典问题;学习如何证明算法是正确的;学习如何分析一个算法是否高效的基础理论方法。