《计算思维》课程教学大纲一、课程名称:计算思维二、课程性质:选修、理论课三、学时与学分:32学时(24学时上课+8学时实验),2学分四、先修课程:Python编程或计算机基础。五、课程简介计算思维是面向大学一年级学生开设的,与大学数学、大学物理有一样地位的通识类思维教育课程,是讲授每个大学生都应具备的计算思维的课程。以计算学科体现出的解决社会自然问题的基本思维模式一一计算思维为主线,涵盖计算系统的基本思维,问题求解框架,算法与复杂性等主要内容。以问题引导、深入浅出、案例分析、多视角讨论、图示化手段及编程实验等,引导学生对计算思维从一个较浅的理解层次逐步过渡到较深入的理解层次。培养大学生计算思维,为大学生创造性思维培养奠定有力的基础。六、课程目标通过相关教学活动,训练大学生利用计算机的基本理论和原理解决现实问题的思想方法,学习计算机学科经典的、对人们现在和未来有深刻影响的思维模式,包括计算技术的奠基性思维、通用计算环境的进化思维、交替促进与共同进化的问题求解思维、计算与社会/自然环境的融合思维等,提升学生的计算思维的能力。具体教学目标如下:目标1:学习和理解计算系统的基本计算思维,包括0和1贯通性思维即语义符号化、符号计算化、计算自动化、分层构造化、构造集成化的思维;掌握CPU指令程序及其硬件执行的通性思维,包括理解图灵机理论与冯·诺伊曼计算机结构,;理解不同抽象级别的计算机,即理解计算机语言与编译器,协议和编解码器、虚拟机器(软件)等基本概念;掌握问题求解框架和计算机若干典型科学问题求解思维,包括递归及迭代的概念,训练培养学生的查找、排序等算法思维;;最终帮助学生建立起对复杂工程问题进行问题抽象、建模、分析、算法实现的解决问题的综合思维能力;目标二:掌握现代计算机贯通性发展思维,包括了解计算机如何从机械式计算机发展到电子计算机,电子计算机的元器件如何从晶体管发展到大规模集成电路,计算机未来智能化、微型化、大型化、网络化的发展趋势,计算机技术的发展趋势对人类生活方式、生存环境、社会发展的影响
《计算思维》课程教学大纲 一、课程名称: 计算思维 二、课程性质:选修、理论课 三、学时与学分: 32 学时(24 学时上课+8 学时实验),2 学分 四、先修课程:Python 编程或计算机基础。 五、课程简介 计算思维是面向大学一年级学生开设的,与大学数学、大学物理有一样地位 的通识类思维教育课程,是讲授每个大学生都应具备的计算思维的课程。以计算 学科体现出的解决社会/自然问题的基本思维模式——计算思维为主线,涵盖计 算系统的基本思维,问题求解框架,算法与复杂性等主要内容。以问题引导、深 入浅出、案例分析、多视角讨论、图示化手段及编程实验等,引导学生对计算思 维从一个较浅的理解层次逐步过渡到较深入的理解层次。培养大学生计算思维, 为大学生创造性思维培养奠定有力的基础。 六、课程目标 通过相关教学活动,训练大学生利用计算机的基本理论和原理解决现实问题 的思想方法,学习计算机学科经典的、对人们现在和未来有深刻影响的思维模式, 包括计算技术的奠基性思维、通用计算环境的进化思维、交替促进与共同进化的 问题求解思维、计算与社会/自然环境的融合思维等,提升学生的计算思维的能 力。 具体教学目标如下: 目标 1:学习和理解计算系统的基本计算思维,包括 0 和 1 贯通性思维即语 义符号化、符号计算化、计算自动化、分层构造化、构造集成化的思维;掌握 CPU 指令程序及其硬件执行的贯通性思维,包括理解图灵机理论与冯·诺伊曼计 算机结构,;理解不同抽象级别的计算机,即理解计算机语言与编译器,协议和 编解码器、虚拟机器(软件)等基本概念;掌握问题求解框架和计算机若干典型 科学问题求解思维,包括递归及迭代的概念,训练培养学生的查找、排序等算法 思维;;最终帮助学生建立起对复杂工程问题进行问题抽象、建模、分析、算法 实现的解决问题的综合思维能力; 目标二: 掌握现代计算机贯通性发展思维,包括了解计算机如何从机械式 计算机发展到电子计算机,电子计算机的元器件如何从晶体管发展到大规模集成 电路,计算机未来智能化、微型化、大型化、网络化的发展趋势,计算机技术的 发展趋势对人类生活方式、生存环境、社会发展的影响
目标三:针对实际的计算机应用及技术方案,能够分析应用中蕴含的计算思维,训练提高学生的归纳总结和分析能力:通过介绍计算复杂性理论的基本概念,训练学生分析算法复杂度的基本思维能力,从而使得能够学生理解什么是计算可行性、计算可行性问题与客观世界的复杂性、多变性、发展性之间的相互影响;目标四:通过课堂讲授与课外文献检索阅读,使学生了解与本课程相关的计算机领域的伟大发明以及前沿发展;培养学生自主学习的能力,包括能通过互联网检索不断学习新知识,掌握新方法和新技能,能够适应计算机新技术发展的能力;七、课程目标对毕业要求的支撑关系对应课程支撑的毕业要求二级指标点目标2.1能综合运用数学、自然科学、工程科学以及计算机科学的基本原理,识「目标1别、判断和表达计算机复杂工程问题的关键环节,具有问题抽象能力7.1贯彻科学发展观,能理解环境保护和社会可持续发展的理念和内涵,了目标2解信息化与环境保护的关系,熟悉计算机产业相关环境保护和可持续发展的方针、政策和法律法规7.2能分析和评价计算机复杂工程问题的解决方案和专业实践与客观世界和目标3社会可持续发展之间的相互的影响12.1能认识到计算机技术日新月异的发展特点,认同自主学习和终身学习的目标4-必要性八、教学设计及对课程目标的支持第一章 绪论1、教学目标1)了解计算机科学的发展历史、发展趋势以及计算学科与其它学科的关系:2)理解计算学科的本质是抽象和自动化;3)计算机计算与人计算的区别与联系:4)掌握计算思维的概念,培养学生的计算思维的能力,为学生创造性思维打下坚实基础。本章教学支持课程目标1、2、3、4。2、教学重点1)计算学科要解决的根本问题;2)计算思维的基本概念,计算思维和其他科学思维方式的区别和联系。3、教学难点1)什么是抽象思维:
目标三: 针对实际的计算机应用及技术方案,能够分析应用中蕴含的计算 思维,训练提高学生的归纳总结和分析能力;通过介绍计算复杂性理论的基本概 念,训练学生分析算法复杂度的基本思维能力,从而使得能够学生理解什么是计 算可行性、计算可行性问题与客观世界的复杂性、多变性、发展性之间的相互影 响; 目标四:通过课堂讲授与课外文献检索阅读,使学生了解与本课程相关的计 算机领域的伟大发明以及前沿发展;培养学生自主学习的能力,包括能通过互联 网检索不断学习新知识,掌握新方法和新技能,能够适应计算机新技术发展的能 力; 七、课程目标对毕业要求的支撑关系 支撑的毕业要求二级指标点 对应课程 目标 2.1 能综合运用数学、自然科学、工程科学以及计算机科学的基本原理,识 别、判断和表达计算机复杂工程问题的关键环节,具有问题抽象能力 目标 1 7.1 贯彻科学发展观,能理解环境保护和社会可持续发展的理念和内涵,了 解信息化与环境保护的关系,熟悉计算机产业相关环境保护和可持续发展的 方针、政策和法律法规 目标 2 7.2 能分析和评价计算机复杂工程问题的解决方案和专业实践与客观世界和 社会可持续发展之间的相互的影响 目标 3 12.1 能认识到计算机技术日新月异的发展特点,认同自主学习和终身学习的 必要性 目标 4 八、教学设计及对课程目标的支持 第一章 绪论 1、教学目标 1)了解计算机科学的发展历史、发展趋势以及计算学科与其它学科的关系; 2)理解计算学科的本质是抽象和自动化; 3)计算机计算与人计算的区别与联系; 4)掌握计算思维的概念,培养学生的计算思维的能力,为学生创造性思维打 下坚实基础。 本章教学支持课程目标 1、2、3、 4。 2、教学重点 1)计算学科要解决的根本问题; 2)计算思维的基本概念,计算思维和其他科学思维方式的区别和联系。 3、教学难点 1)什么是抽象思维;
2)什么是自动化思维。4、教学环节设计围绕教学重点和教学难点,综合应用课堂讨论、课外阅读等教学形式。1)课堂讨论围绕什么是抽象思维和自动化思维问题展开;老师首先举例说明,再要求学生自己找出类似的例子2)课外阅读要求学生网上查找和阅读关于计算机发展历史和未来发展趋势的文献。第二章计算系统的基本思维1、教学目标1)理解0/1思维:计算机里所有数值信息和非数值信息如何基于0/1符号进行编码;2)理解符号化思维:计算的本质就是符号变换、只有符号化了才能实现自动化计算;3)理解计算化思维和自动化思维:如何通过电子技术表示0/1符号及实现基本逻辑运算(与或非)的计算自动化:计算机单所有的复杂运算都最终都可转换成基本逻辑运算(与或非)的组合;4)理解和掌握图灵机模型:图灵机模型的概念、图灵机的基本指令系统、图灵机程序、图灵机状态;培养学生基于图灵机的抽象思维能力;5)理解和掌握冯·诺伊曼计算机:冯·诺伊曼计算机的五大部件及其功能冯·诺伊曼计算机的程序自动执行过程、现代计算机系统如何在冯·诺伊曼计算机基础上逐步演化和发展:6)理解和掌握现代计算机系统的硬件系统、软件系统构成:7)理解和掌握算法、计算机程序设计语言、计算机程序的概念以及三者之间的关系:理解和掌握机器语言和高级语言的关系;从计算机语言的角度理解和掌握不同抽象层次的计算机;8)理解计算机系统中协议和信息编解码的概念、重要性和基本方法;本章教学支持课程目标1和课程目标2。2、教学重点1)图灵机模型的概念、基本指令系统、图灵机程序、图灵机状态:2)冯诺伊曼计算机的体系结构、五大部件及其功能、冯·诺伊曼计算机的程序自动执行过程;3)计算机程序的本质;机器语言和高级程序设计语言的关系。3、教学难点
2)什么是自动化思维。 4、教学环节设计 围绕教学重点和教学难点,综合应用课堂讨论、课外阅读等教学形式。 1)课堂讨论 围绕什么是抽象思维和自动化思维问题展开;老师首先举例说明,再要求学 生自己找出类似的例子; 2)课外阅读 要求学生网上查找和阅读关于计算机发展历史和未来发展趋势的文献。 第二章 计算系统的基本思维 1、教学目标 1)理解 0/1 思维:计算机里所有数值信息和非数值信息如何基于 0/1 符号进 行编码; 2)理解符号化思维:计算的本质就是符号变换、只有符号化了才能实现自 动化计算; 3)理解计算化思维和自动化思维:如何通过电子技术表示 0/1 符号及实现 基本逻辑运算(与或非)的计算自动化;计算机里所有的复杂运算都最终都可转 换成基本逻辑运算(与或非)的组合; 4)理解和掌握图灵机模型:图灵机模型的概念、图灵机的基本指令系统、 图灵机程序、图灵机状态;培养学生基于图灵机的抽象思维能力; 5)理解和掌握冯·诺伊曼计算机:冯·诺伊曼计算机的五大部件及其功能、 冯·诺伊曼计算机的程序自动执行过程、现代计算机系统如何在冯·诺伊曼计算机 基础上逐步演化和发展; 6)理解和掌握现代计算机系统的硬件系统、软件系统构成; 7)理解和掌握算法、计算机程序设计语言、计算机程序的概念以及三者之 间的关系;理解和掌握机器语言和高级语言的关系;从计算机语言的角度理解和 掌握不同抽象层次的计算机; 8)理解计算机系统中协议和信息编解码的概念、重要性和基本方法; 本章教学支持课程目标 1 和课程目标 2。 2、教学重点 1)图灵机模型的概念、基本指令系统、图灵机程序、图灵机状态; 2)冯·诺伊曼计算机的体系结构、五大部件及其功能、冯·诺伊曼计算机的 程序自动执行过程; 3)计算机程序的本质;机器语言和高级程序设计语言的关系。 3、教学难点
1)理解和掌握图灵机模型如何根据指令对输入符号进行变换;理解图灵机模型对现实世界问题的抽象能力2)高级语言程序到机器指令的编译过程的基本思想。4、教学环节设计围绕教学重点和教学难点,综合应用课堂讨论、课外作业、课外阅读、实验环节等教学形式。1)课堂讨论围绕图灵机模型的本质和冯·诺伊曼计算机结构与现代计算机结构之间关系展开;2)课外作业围绕图灵机程序指令自动执行、图灵机状态变迁、冯·诺伊曼计算机的体系结构、计算机内部信息编解码内容设计和布置作业;3)课外阅读要求学生网上查找和阅读关于图灵主要贡献、冯·诺伊曼主要贡献、计算机语言发展历史和未来趋势等内容。4)实验环节设计图灵机实验:要求学生在理解图灵机的工作原理和控制规则的基础上,使用python语言实现一个图灵机,该图灵机能识别两种模式“V=C"和“V=C+C;”并能去除空格,在输入不符合这两种模式时输出false。第三章问题求解框架1、教学目标1)理解和掌握算法的概念、算法的基本特性;2)理解和掌握高级程序设计语言的三大基本结构:顺序、条件分支和循环以及利用流程图来描述算法的方法;3)理解算法问题求解框架,包括:数学建模、算法策略设计、算法数据结构设计、算法控制结构设计、算法分析:通过对计算科学中若干典型问题的介绍,包括七桥问题、汉诺塔问题及旅行商问题,帮助学生理解深入理解算法问题求解框架里面的每个步骤的作用和基本实现方法:4)培养学生对复杂工程问题进行建模、分析,提出解决问题的思路,并得出有效结论的能力,提高学生解决复杂工程问题的综合能力;本章教学支持课程目标1和课程目标2。2、教学重点
1)理解和掌握图灵机模型如何根据指令对输入符号进行变换;理解图灵机 模型对现实世界问题的抽象能力; 2)高级语言程序到机器指令的编译过程的基本思想。 4、教学环节设计 围绕教学重点和教学难点,综合应用课堂讨论、课外作业、课外阅读、实验 环节等教学形式。 1)课堂讨论 围绕图灵机模型的本质和冯·诺伊曼计算机结构与现代计算机结构之间关系 展开; 2)课外作业 围绕图灵机程序指令自动执行、图灵机状态变迁、冯·诺伊曼计算机的体系 结构、计算机内部信息编解码内容设计和布置作业; 3)课外阅读 要求学生网上查找和阅读关于图灵主要贡献、冯·诺伊曼主要贡献、计算机 语言发展历史和未来趋势等内容。 4)实验环节 设计图灵机实验:要求学生在理解图灵机的工作原理和控制规则的基础上, 使用 python 语言实现一个图灵机,该图灵机能识别两种模式“V=C;”和“V=C+C;” 并能去除空格,在输入不符合这两种模式时输出 false。 第三章 问题求解框架 1、教学目标 1)理解和掌握算法的概念、算法的基本特性; 2)理解和掌握高级程序设计语言的三大基本结构:顺序、条件分支和循环 以及利用流程图来描述算法的方法; 3)理解算法问题求解框架,包括:数学建模、算法策略设计、算法数据结 构设计、算法控制结构设计、算法分析; 通过对计算科学中若干典型问题的介 绍,包括七桥问题、汉诺塔问题及旅行商问题,帮助学生理解深入理解算法问题 求解框架里面的每个步骤的作用和基本实现方法; 4)培养学生对复杂工程问题进行建模、分析,提出解决问题的思路,并得 出有效结论的能力,提高学生解决复杂工程问题的综合能力; 本章教学支持课程目标 1 和课程目标 2。 2、教学重点
1)算法的描述方法:流程图的基本概念及如何用流程图描述算法:2)算法策略设计示例:如贪心算法解决旅行商问题;3)数据结构的基本概念,算法和数据结构之间的关系。3、教学难点1)七桥问题、汉诺塔问题及旅行商问题是如何抽象(数学建模)、如何求解(如何设计算法策略);2)数据的逻辑结构和存储结构的关系、不同数据结构对算法求解效率的影响;3)利用流程图对算法步骤进行描述的能力培养。4、教学环节设计围绕教学重点和教学难点,综合应用课堂讨论、课外作业、课外阅读、实验环节等教学形式。1)课堂讨论围绕旅行商问题的算法策略-贪心算法展开:为什么贪心算法不能得到最优解?不能得到最优解的贪心算法有什么意义?2)课外作业围绕算法流程图、算法数据结构设计和算法控制结构设计设计和布置作业;3)课外阅读要求学生网上查找和阅读更多的使用贪心算法策略的算法示例:4)实验环节设计旅行商问题(TSP问题)实验:要求学生在理解贪心算法思想的基础上,使用python语言编写一个贪心算法程序来解决旅行商问题,该程序能输出最终的路径。第四章算法与复杂性1、教学目标1)理解和掌握递归算法与递推算法原理上的异同点,能够用程序语言对递归和递推函数进行定义,并掌握递归和递推的计算过程:2)理解为什么需要排序?理解和掌握简单选择排序、冒泡排序,掌握其排序原理,并能绘制出其流程图;3)理解和掌握在排序的基础上提高搜索算法效率的基本思想-二分搜索法;
1)算法的描述方法:流程图的基本概念及如何用流程图描述算法; 2)算法策略设计示例:如贪心算法解决旅行商问题; 3)数据结构的基本概念,算法和数据结构之间的关系。 3、教学难点 1)七桥问题、汉诺塔问题及旅行商问题是如何抽象(数学建模)、如何求 解(如何设计算法策略); 2)数据的逻辑结构和存储结构的关系、不同数据结构对算法求解效率的影 响; 3)利用流程图对算法步骤进行描述的能力培养。 4、教学环节设计 围绕教学重点和教学难点,综合应用课堂讨论、课外作业、课外阅读、实验 环节等教学形式。 1)课堂讨论 围绕旅行商问题的算法策略-贪心算法展开:为什么贪心算法不能得到最优 解?不能得到最优解的贪心算法有什么意义? 2)课外作业 围绕算法流程图、算法数据结构设计和算法控制结构设计设计和布置作业; 3)课外阅读 要求学生网上查找和阅读更多的使用贪心算法策略的算法示例。 4)实验环节 设计旅行商问题(TSP 问题)实验:要求学生在理解贪心算法思想的基础上, 使用 python 语言编写一个贪心算法程序来解决旅行商问题,该程序能输出最终 的路径。 第四章 算法与复杂性 1、教学目标 1)理解和掌握递归算法与递推算法原理上的异同点,能够用程序语言对递 归和递推函数进行定义,并掌握递归和递推的计算过程; 2)理解为什么需要排序?理解和掌握简单选择排序、冒泡排序,掌握其排 序原理,并能绘制出其流程图; 3)理解和掌握在排序的基础上提高搜索算法效率的基本思想-二分搜索法;