课程介绍

一 、课程概况 【课程名称】程序设计、算法与数据结构(二) 【课程性质】计算机类专业基础课程 【教学对象】四年制大一本科生 【前修课程】程序设计、算法与数据结构(一) 【后修课程】程序设计、算法与数据结构(三) 二、教学地位及与专业认证中的要求的对应关系 1、教学地位与作用 程序设计、算法与数据结构(二)是计算机、软件工程、网络工程、通信工程专业基础课程,融合了面向对象程序设计基础(C++语言)和数据结构部分内容,包括类与对象、封装、继承、多态、容器、栈、队列、树等。通过本课程的学习,使学生掌握基本的面向对象的编程思想与能力,并能将面向对象的编程方法和技术应用于数据结构中栈、队列、树等简单问题的实现,培养学生基本的抽象能力、问题解决能力,为后续的专业课程的学习打下坚实的基础。 通过本课程的教学,使学生把握C++面向对象的程序设计方法,掌握一定的五、各章节教学重点与难点 (抽象思维能力。利用面向对象的基本机制进行问题的抽象、封装、继承,应用面向对象的技术来进行数据结构的学习、实践,更好地培养学生的程序思维、动手实践能力。 2、与专业认证中的"毕业要求"的对应关系 (1)通过学习C++语言设计程序的学习,培养学生面向对象的程序设计思想和理念,并利用面向对象的思想来分析、设计和实现数据结构中的栈、队列、二叉树、图、查找、排序等问题,提高学生软件的设计能力和开发能力(支撑毕业要求3.1 掌握软件设计理论与方法,具备软件系统的开发能力)。 (2)通过将哈夫曼树、最小生成树、最短路径、关键路径等技术应用于实际问题,培养学生对于复杂计算机工程问题的分析能力、根据特殊情况对方案进行改进的能力(支撑毕业要求1.4能够运用专业知识对复杂计算机工程问题的解决途径进行分析、改进)。 (3)对于类的继承、多态、图、二叉树等有关的复杂工程问题,学生需要具备能够用设计文档、原型系统等形式来呈现设计成果,与其他同学进行交流(支撑毕业要求3.4 能够根据明确的需求,设计出针对计算机相关复杂工程问题的解决方案,能够用设计文档、原型系统等形式呈现设计成果)。 (4)对于所给并不明确的复杂工程问题,学生需要具有识别问题、提炼问题和表达问题的能力(支撑毕业要求2.1 能够应用数学、自然科学和计算机科学与技术专业的基本原理,对计算机领域复杂工程问题进行识别、提炼并表达)。 课程目标与毕业要求的关系矩阵 毕业要求指标点 3.1 1.4 3.4 2.1 课程目标1 H(0.3) 课程目标2 M(0.2) 课程目标3 M(0.2) 课程目标4 L(0.1) 注:表中"H(高)、M(中)、L(弱)"表示课程与各项毕业要求的关联度。 三、课程选用教材 【使用教材】 (1)杜茂康. C++.NET程序设计[M], 北京:清华大学出版社,2009. (2)王红梅. 数据结构(C++版)[M], 北京:清华大学出版社,2013. 【参考教材】 (1)谭浩强. C程序设计 [M],北京:清华大学出版社,2010. (2)http://www.openjudge.cn,在线判定系统 (3)长沙理工大学ACM集训队编著. OJ习题汇总(电子版) 四、本课程特点及教学手段和方法 1、教学手段和方法 采取课前预习、针对授课、作业修订、上机实验、主题研讨、阶段考试、作业批改、课后指导等手段督促学生主动学习、编程实现、完成作业。特别是在每个星期会安排一次研讨,其内容是一个主题知识点的综合应用,能够显著提升学生的思考能力、知识获取与组织能力、交流能力、动手实践能力。 2、教学特点 《程序设计、算法与数据结构(二)》是计算机与通信工程学院教学改革的重点课程,融合了多门专业基础课程,具有难度大、实践性强等特点。教学必须遵循由浅入深的原则,对核心技术加以讲授、研讨,确保课程教学效果,为后续的专业课程学习打下坚实的基础。

课程通知 >>更多
最新动态
  • 蔡碧野发布了新的话题 第24次上课签到
  • 蔡碧野发布了新的话题第23次上课签到
  • 蔡碧野发布了新的话题第22次上课签到
  • 蔡碧野发布了新的话题第21次上课签到
  • 蔡碧野发布了新的话题 第20次上课签到
  • 蔡碧野发布了新的话题第19次上课签到
  • 蔡碧野发布了新的话题 第18次上课签到
  • 蔡碧野发布了新的话题第17次上课签到
  • 蔡碧野发布了新的话题第16次上课签到
  • 蔡碧野发布了新的话题 第15次上课签到