本课程主要介绍算法设计与分析的基本方法以及算法复杂性理论基础。通过本课程的学习,要求学生理解并熟练掌握递归与分治法、贪心法、动态规划方法、回溯法、分支定界法,以及高级图论算法、线性规划算法等,理解并掌握算法复杂性的分析方法、NP完全性理论基础等计算复杂性的基本知识及完备性证明概要。
本课程的培养目标是,通过教学和实践,培养学生从算法的角度运用数学工具分析问题和解决问题的基本能力,从而使他们能够正确地分析和评价一个算法,进一步设计出真正有效的算法。此外,配合实验课程的教学,学生应理论联系实际,理论指导实践,通过规范地完成一系列算法设计实验进一步巩固所学的相关书本知识,在知识、能力、素质上得到进一步的提高。
高等数学或数学分析、线性代数或高等代数、概率论与数理统计、离散数学(含图论、集合论、近世代数、数理逻辑基础)、数字逻辑、高级语言程序设计、数据结构
为积极响应国家低碳环保政策, 2021年秋季学期开始,中国大学MOOC平台将取消纸质版的认证证书,仅提供电子版的认证证书服务,证书申请方式和流程不变。
电子版认证证书支持查询验证,可通过扫描证书上的二维码进行有效性查询,或者访问 http://www.icourse163.org/verify,通过证书编号进行查询。学生可在“个人中心-证书-查看证书”页面自行下载、打印电子版认证证书。
完成课程教学内容学习和考核,成绩达到课程考核标准的学生(每门课程的考核标准不同,详见课程内的评分标准),具备申请认证证书资格,可在证书申请开放期间(以申请页面显示的时间为准),完成在线付费申请。
认证证书申请注意事项:
1. 根据国家相关法律法规要求,认证证书申请时要求进行实名认证,请保证所提交的实名认证信息真实完整有效。
2. 完成实名认证并支付后,系统将自动生成并发送电子版认证证书。电子版认证证书生成后不支持退费。
《算法设计与分析》,张德富,高等教育出版社,2009
《Introduction to Algorithms》,The MIT Press,2001
Q : 什么人能学习这门课?
A : 这是计算机学科的一门专业课程,一般在本科二年级下学期或者三年级上学期开设,那么你需要有程序设计的基础,包括高级程序语言设计(不限语言),数据结构等,以及数学类课程基础,包括高等代数,微积分初步,线性代数,概率论与数理统计等,如果你有这些基础的知识,那么欢迎你来上我们的课程。
Q : 相同的课程那么多了,为什么要选这门呢?
A : 因为我们的老师讲的通俗易懂呀,我们的主讲老师精心设计了课程,并花了整整一个学期的时间,把厦门大学人工智能系2016级的上课课堂搬到了网上,选修这门课,如同坐在厦门大学教室里听课,这是别的课程达不到的效果呢。
Q : 这门课会不会很难过?
A : 这是计算机专业、人工智能专业考研必考科目,考点是会全覆盖的;如果想要考研,那么必须翻过这座大山。为了了解而学习,为了进阶而学习,只要你跟着一个周期下来,考试对你来说,就是小case了。
Q : 我们的目标是什么?
A : 请详见授课目标,帮助大家学好算法设计与分析,是这门课最真诚的目标。
Q : 如果想深入学习,怎么办?
A : 可以关注大数据与计算智能公众号,下载英文版课件和有关问题的源代码。