3    数据结构进阶
5    动态规划进阶
6    搜索技术进阶
7    字符串处理
8    典型随机算法
9    前沿算法研究
高级数据结构与算法分析
青岛大学 杜祥军
本课程是面向图灵创新实验班开设的专业核心必修课,向前衔接高级程序设计语言、面向对象程序设计方法、数据结构与基础算法,向后衔接计算理论、机器学习、人工智能、大数据分析方法等课程。课程面向计算机专业领域竞赛实践、工程应用与学术研究,通过讲授算法的概念及设计方法,锻炼学生的抽象思维、计算思维,培养学生的创造性思维,提升学生在理论指导下分析实际问题、解决实际问题的能力,为开发高效的软件系统,以及解决相关领域问题奠定坚实的基础。 在理论课中,本课程衔接数据结构与算法基础,主要讲授高级数据结构原理与应用,算法复杂性分析理论与方法,以及包括分治思想、动态规划、贪心算法、搜索技术、随机算法等在内的经典算法原理与应用。每类算法讲授主要包括算法的思想与性质,经典算法案例与典型扩展应用。 在实践课中,着重训练学生利用典型算法解决复杂问题的能力,培养学生分析、描述、解决复杂问题的能力,锻炼学生针对复杂问题的数据结构描述,训练学生针对复杂问题的算法设计与程序实现能力,以及算法方案评估能力。
3    数据结构进阶
5    动态规划进阶
6    搜索技术进阶
7    字符串处理
8    典型随机算法
9    前沿算法研究
本课程是专业核心必修课,对培养计算机专业创新人才有着重要的作用,教学中应给予极大的重视。在理论课的讲述中特别注重讲解问题的分析过程,将设计方法、分析技术与具体范例的讲解相结合,多举应用实例,由浅入深、分步讲解,从而使学生逐步掌握所学内容。
每次课均要求学生课前预习、课后复习,同时配以相应的习题讨论、实验实践与作业练习。由于课程学习难度较大,应多鼓励学生坚持不懈,并对有难度的练习给予一定的弹性时间完成,同时允许学生分组研究共同完成。
(一)教材
算法设计,[美] Jon Kleinberg, Éva Tardos著,王海鹏 译,人民邮电出版社,2021.
(二)学习资源
[1] 算法导论公开课:http://open.163.com/special/opencourse/algorithms.html,麻省理工学院.
[2] 算法导论(原书第3版),(美)Thomas H.Cormen,Charles E.Leiserson,RonaldL.Rivest,Clifford Stein著,潘金贵 等译,机械工业出版社,2013
[3] 数据结构与算法分析:C语言描述(原书第2版),(美)Mark AllenWeiss著,冯舜玺译,机械工业出版,2004.
[4] 算法引论:一种创造性方法,(美)Udi Manber著,黄林鹏 等译,电子工业出版社,2010.
[5] 算法(第4版),[美]Robert Sedgewick, Kevin Wayne著,谢路云 译,人民邮电出版社,2012.