《《程序设计实践》课程教学大纲.docx》由会员分享,可在线阅读,更多相关《《程序设计实践》课程教学大纲.docx(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、程序设计实践教学大纲一、课程基本信息课程名称程序设计实践Programming Experience课程编码CST220811020开课院部计算机科学与技术学院课程团队程序设计学分2.0课内学时48讲授0实验0上机48实践0课外学时48适用专业计算机科学与技术授课语言中文先修课程课程简介(必修)程序设计实践课程是一门通过解决实际工作生活中问题的专业实践课,是训练计算机科学与技术专业学生基本技能的一门重要课程。 程序设计实践课程覆盖面广、影响大,是大学生参加专业课程学习、课程设计、毕业设计、创新实验、科技制作、学科竞赛乃至创业等活 动的重要平台。本课程主要从基础算法入手,讲授搜索、动态规划、数学
2、和计算几何的基本思想,步步深入,通过引入思政主题相关的程序设计案 例,对算法设计思路分析与详细的程序设计进行描述,有效地促进学生全面、细致地思考问题,提高编程的准确性、增强程序差错、调试 的能力。最终能够打下较为坚实的程序设计基础,为进一步学习其他专业课程或在其他专业领域运用计算机编程解决问题创造良好的条 件。Programming practice course is a professional practice course that solves problems in real work and life, and is an important course that trains
3、 the basic skills of students majoring in computer science and technology. The program design practice course covers a wide range and has great influence. It is an important platform for college students to participate in professional course learning, curriculum design, graduation design, innovation
4、 experiment, science and technology production, discipline competition and even entrepreneurship.This course mainly starts with the basic algorithm, teaches the basic ideas of search, dynamic programming, mathematics and computational geometry, and goes deep step by step. Through the introduction of
5、 Ideological and political theme related programming cases, and by the analysis of algorithm design ideas and detailed description and display of Program Design, effectively promote students to think about problems comprehensively and carefully, improve the accuracy of programming, enhance the abili
6、ty of program errors and debugging. In the end, it can lay a solid foundation for programming and create favorable conditions for further learning other professional courses or using computer programming to solve problems in other professional fields.负责人大纲执笔人审核人二、课程目标序号代号课程目标OBE毕业要求指标点任务自选1Ml目标1 :掌握
7、编程知识和技术,运用计算思维分析专业工程问题,进行算法设计与分析。为毕业要求 指标点1.3的达成提供支持。是1.32M2目标2 :能够针对计算系统的功能模块,进行基于模型的算法设计,应用软件开发技术完成详细设计 与实现,为毕业要求指标点3. 2的达成提供支持。是3.23M3目标3 :在计算系统的设计环节中体现探索精神和创新意识,为毕业要求指标点3. 3的达成提供支 持。是3.34M4标4 :能自主学习和运用不断出现的新技术、新方法,具有适应社会和计算应用领域发展的能力,为 毕业要求指标点12. 2的达成提供一定支持。:是12.2三、课程内容序号章节号标题课程内容/重难点支撑课 程目标课内 学时
8、教学方式课外 学时课外环节1第1章第1章绪论本章重点难点:程序设计创新能力的培养,程序设计竞赛的评 测/21. 11.1培养杰出程序 员的捷径编写大量的代码,丰富的算法知识,计算思维和逻辑思维,团 队合作精神Ml0.5上机0.5自学31.21.2算法与创新能 力的培养算法与创新能力的培养Ml0.5上机0.5自学41.31.3程序设计竞赛竞赛平台、输入输出、测试、编码速度、模板、代码规范、算 法与复杂度Ml0.5上机0.5自学51.41.4学习建议天赋与勤奋,如何学习相关算法Ml0.5上机0. 5自学6第2章第2章基础算法本章重点难点:高精度算法,快速排序算法,贪心算法M2, M3, M4/72
9、. 12.1高精度算法掌握高精度加减乘除算法M2, M3, M3上机3自学482.22. 2快速排序算法理解并掌握快速排序算法M2, M3, M42上机2自学92.32. 3贪心算法通过社会相关案例,理解贪心算法原理,能实现贪心算法M2, M3, M43上机3自学10第3章第3章搜索本章重点难点:递归和排列,深度优先搜索和宽度优先搜索M2, M3, M4/113. 13.1递归和排列理解递归的含义,掌握递归和排列算法的实现M2, M3, M42上机2自学123.23. 2宽度优先搜索理解掌握宽度优先搜索的适用环境,掌握相关实现代码M2, M3, M44上机4自学133.33. 3深度优先搜索理
10、解掌握深度优先搜索的适用环境,掌握相关实现代码M2, M3, M44上机4自学14第4章第4章动态规划本章重点难点:了解动态规划思想,掌握基础动态规划算法, 掌握记忆化搜索算法,掌握区间动态规划,树形动态规划等算 法。M2, M3, M4/154. 14.1动态规划概念 及思想了解动态规划的思想M2, M3, M 41上机1自学164.24. 2记忆化搜索掌握记忆化搜索的方法M2, M3, M 42上机2自学174.34. 3基础动态规划掌握0/1背包,最长公共子序列,最长递增子序列的实现方法M2, M3, M43上机3自学184.44. 4其他动态规划理解区间动态规划、树形动态规划,数位动态
11、规划、状态压缩 动态规划的实现方法M2, M3, M44上机4自学19第5章第5章数学本章重点难点:数论相关算法,组合数学相关算法,概率和数 学期望,博弈论/205. 15.1数论相关算法掌握模运算、快速鬲、GCD/LCM、扩展欧几里得算法、同余与逆M2, M3, M4上机4自学元、素数等相关算法4215.25. 2组合数学掌握鸽巢原理、杨辉三角和二项式系数、容斥原理、Fibonacci 数列、母函数等相关算法M2, M3, M44上机4自学225.35. 3概率和数学期 望理解概率和数学期望在程序设计中的应用M2, M3, M42上机2自学235.45. 4博弈论理解巴什游戏、尼姆游戏、图游
12、戏与SG函数、威佐夫游戏M2, M3, M44上机4自学24第6章第6章计算几何本章重点难点:二维几何基础的相关算法,圆相关算法,三维 几何相关算法/256. 16.1二维几何基础掌握点和向量、点积和叉积、点和线、多边形、凸包、最近点 对、旋转卡壳、半平相交等算法M2, M3, M41.5上机1.5自学266.26.2圆掌握圆的基本计算以及最小圆覆盖等算法M2, M3, M41上机1自学276.46. 3三维几何掌握三维点和向量、三维点积、三维差积、最小球覆盖和三维 凸包等算法M2, M3, M41.5上机1. 5自学四、考核方式序号考核环书操作细节总评占比1平时测验1 .安排68次平时测验,
13、每次90分钟,5-10个编程题,以机试为主、分阶段多重累加式考核,为毕业要求1、3和12 达成度的评价提供支持。2 .平时测验主要考核学生对所学知识点的掌握情况以及对平时作业的完成情况。3 .课程强调考核学生对程序设计综合能力的运用。通过对规定的考试内容掌握的情况,特别是具体的问题求解能力的考 核,为毕业要求1、3和12达成度的评价提供支持。100%五、评分细则序号课程目标考核环节大致占比评分等级1Ml平时测验100%A-按时参加测验,正确解出80%及以上的题目。B-按时参加测验,正确解出60%及以上的题目。C-按时参加 测验,正确解出40%及以上的题目。D-按时参加测验,正确解出20%及以上
14、的题目。E-不按时参加测验,或不能正确解出不足20%的题目。2M2平时测验100%A-按时参加测验,正确解出80%及以上的题目。B-按时参加测验,正确解出60%及以上的题目。C-按时参加 测验,正确解出40%及以上的题目。D-按时参加测验,正确解出20%及以上的题目。E-不按时参加测验,或 不能正确解出不足20%的题目。3M3平时测验100%M-按时参加测验,熟练掌握和运用主流编程工具完成程序设计。N-未按时参加测验,或不能熟练掌握和运 用主流编程工具完成程序设计。4M4平时测验100%A-按时参加测验,正确解出80%及以上的题目。B-按时参加测验,正确解出60%及以上的题目。C-按时参加 测
15、验,正确解出40%及以上的题目。D-按时参加测验,正确解出20%及以上的题目。E-不按时参加测验,或 不能正确解出不足20%的题目。评分等级说明:A, B, C, D, E = 90-100, 80-89, 70-79, 60-69, 0-59; A, B, C, D = 90-100, 75-89, 60-74, 0-59; A, B, C = 90-100, 75-89, 60-74, 0-59; M, N = 80-100, 0-79六、教材与参考资料序号教学参考资料明细1图书1算法竞赛入门到进阶,罗勇军,郭卫斌,清华大学出版社,2019. 7, ISBN:9787302529156. (*主教材)2图书算法设计编程实验(第2版),吴永辉,王建德,机械工业出版社,2020. 4, ISBN:9787111645818.3图书趣学算法,陈小玉,人民邮电出版社,2017. 8, ISBN: 9787115459572.4图书|算法基础与在线实践,刘家瑛,郭炜,李文新,图等教育出版社,2017.3, ISBN:9787040473001.
限制150内