课程简介 Course Introduction
ACM国际大学生程序设计竞赛(英文ACM International Collegiate Programming Contest,即ACM/ICPC),简称ACM竞赛,是由国际计算机界历史悠久、颇具权威性的组织美国计算机ACM学会(Association for Computing Machinery)主办,是世界上公认的规模最大、水平最高的国际大学生程序设计竞赛,素来被冠以“程序设计的奥林匹克”的尊称,其目的旨在使大学生运用计算机来充分展示分析问题和解决问题的能力。ACM程序设计课程是岭南师范学院从2013级开始开设的一门新课程,期望在于培养学生的计算机素养,强化解决问题的能力。
教学大纲 Teaching Syllabus

《ACM程序设计》教学大纲

一、 课程基本信息

课程编号:

课程英文名称:ACM programming

授课对象:计算机科学与技术专业

课程类型(指公共基础课、专业必修课、专业选修课等):专业选修课

建议学时:48

学分:3

与相关课程的衔接:数据结构、离散数学、高级程序设计

考核方式:考查

二、 教学目标和要求

《ACM程序设计》是专门培养ACM国际大学生程序设计竞赛思想,课程详细讲解了ACM国际大学生程序设计竞赛(ACM/ICPC)编程、调试方法,以及提高时间、空间性能的策略。第1章讲解了ACM程序设计入门知识;第2章讲解了字符串处理问题;第4章讲解了简单数学问题的处理;第8章讲解了高级数据结构并查集;第3、5、6、7章分别讲解了常用的ACM程序设计基本编程技巧,包括蛮力、贪心、分治递归、动态规划等;配备了原版ACM竞赛题的解题思路、编程参**和英文题目中文翻译。

通过本学科的教学,使学生能掌握ACM竞赛的基本知识,掌握与了解计算机专业英语、高级数据结构、离散数学、初等数论、数值计算、计算机算法、人工智能、时空权衡、图算法、计算几何等等内容。并能综合运用这些知识,利用程序语言进行ACM竞赛题目的设计与编写。

三、 教学内容、教学方式与课时分配

(一)ACM程序设计概述

教学基本内容:

1、ACM竞赛

2、GDCPC竞赛

3、蓝桥杯大赛

4、信息学奥赛

5、入门基础与技巧

教学方式:多媒体教学、讲授演示、讨论启发及课后OJ练习

(二)字符串处理

教学基本内容:

1、字符串函数

2、字符串操作

3、字符串匹配

教学方式:多媒体教学、讲授演示、讨论启发及课后OJ练习

(三)蛮力法与简单模拟

教学基本内容:

1、蛮力法的基本原理

2、查找问题中的蛮力法

3、排序问题中的蛮力法

4、图论问题中的蛮力法

5、简单模拟问题

教学方式:多媒体教学、讲授演示、讨论启发及课后OJ练习

(四)简单数学问题处理

教学基本内容:

1、数学模拟

2、数论

3、几何

4、组合

教学方式:多媒体教学、讲授演示、讨论启发及课后OJ练习

(五)贪心算法

教学基本内容:

1、贪心法基本原理

2、背包问题

3、图论问题中的贪心法

教学方式:多媒体教学、讲授演示、讨论启发及课后OJ练习

(六)分治与递归法

教学基本内容:

1、分治基本思想

2、递归基本思想

3、排序问题中的分治递归

4、查找问题中的分治递归

教学方式:多媒体教学、讲授演示、讨论启发及课后OJ练习

(七)动态规划法

教学基本内容:

1、动态规划法的基本思想

2、图论问题中的动态规划法

3、查找问题中的动态规划法

教学方式:多媒体教学、讲授演示、讨论启发及课后OJ练习

(八)并查集

教学基本内容:

1、并查集基本原理

2、并查集基本操作

3、并查集的优化

4、图论问题中的并查集

教学方式:多媒体教学、讲授演示、讨论启发及课后OJ练习

四、 实践环节

按照人才培养计划,本课程在学时内无实践环节。但本课程实践性较强,需要学生在课外OJ平台进行在线练习。

五、 教材

吴涛,张立敏,《ACM程序设计基础讲义》,自编教材讲义,2014.12。

六、 参考资料

(1)郭嵩山,崔昊,吴汉荣,陈明睿著,《国际大学生程序设计竞赛辅导教程》,北京大学出版社,2001年12月第1版。

(2)俞经善,《ACM程序设计竞赛基础教程》,清华大学出版社,2010年10月第1版。

七、 必要的说明

① 本课程选用教材为自编文字教材讲义,是学生学习的主要用书,它是教和学的主要依据。

② 为确保本课程教学活动正常有效地开展,保证课程的教学质量,组织由开设本课程的教师开展教研活动,不断提高教学质量。布置课程的教学任务,研究落实课程实施方案。

③ 本课程是一门实践性较强、内容有深度的综合课程,因此,要求教师认真钻研教学大纲,认真备课,仔细批改作业并对作业中存在的问题认真讲解。

④ 本课程由于学时所限,特别没有设置实践学时,因此,学生必须多做练习题来加深理解和掌握,从而达到消化、掌握所学知识的目的。


留言板 Message Board
条留言  共

  • 参与互动
    Interaction

  • 扫码加入课程
    Scan QR Code
需要验证您的身份,请输入请求信息:
  • 学号号:
  • 班级选择:
  • 课程密码:

扫一扫二维码,快速加入本课程!

放大二维码 查看使用方法
课程
引导