数据结构教学方法探讨-陈越PPT课件下载推荐.ppt
《数据结构教学方法探讨-陈越PPT课件下载推荐.ppt》由会员分享,可在线阅读,更多相关《数据结构教学方法探讨-陈越PPT课件下载推荐.ppt(43页珍藏版)》请在冰豆网上搜索。
解决一个有趣的问题3兴趣兴趣引子的重要性引子的重要性l例:
例:
1.图书摆放策略(数据组织与操作的关系)图书摆放策略(数据组织与操作的关系)2.Print(N)的循环与递归实现(空间复杂度的影响)的循环与递归实现(空间复杂度的影响)3.多项式求值(时间复杂度的影响)多项式求值(时间复杂度的影响)l例:
1.登录登录QQ的时候,的时候,QQ服务器如何核对身份?
服务器如何核对身份?
2.Google和和Baidu如何搜索?
如何搜索?
散列查找散列查找解决问题方法的效率,跟数据的组织方式有关解决问题方法的效率,跟数据的组织方式有关(如例如例1),跟空间的利用效率有关(如例跟空间的利用效率有关(如例2),也跟算法的巧妙程度),也跟算法的巧妙程度有关(如例有关(如例3)。
)。
什么是什么是“数据结构数据结构”4实践实践综合性课程设计综合性课程设计l数据结构基础数据结构基础综合性课程设计的作用综合性课程设计的作用l存在问题及解决思路存在问题及解决思路l课程设计的课程设计的l内容选择内容选择l实施方法实施方法l激励手段激励手段l相关文档及辅助教材相关文档及辅助教材5存在问题及解决思路存在问题及解决思路l问题问题在传统的课程教学中,往往采用在传统的课程教学中,往往采用一般性实验一般性实验作为课程实践的作为课程实践的主要内容,即布置针对本次课堂教学内容的小型练习题,让学生主要内容,即布置针对本次课堂教学内容的小型练习题,让学生独立完成程序设计与实现。
这样的实践主要存在两方面问题:
独立完成程序设计与实现。
l练习题所需要用到的知识点就是课堂教学刚讲授过的内容,学生练习题所需要用到的知识点就是课堂教学刚讲授过的内容,学生只要直接拿来用就可以,不需要自己去考虑各种可能的解决方案只要直接拿来用就可以,不需要自己去考虑各种可能的解决方案并找到最合适的方法。
这种实践是并找到最合适的方法。
这种实践是验证性验证性的,比较简单直接,学的,比较简单直接,学生受到的锻炼相对较少。
生受到的锻炼相对较少。
l学生独立完成小型程序,虽然可以在一定程度上锻炼编程能力,学生独立完成小型程序,虽然可以在一定程度上锻炼编程能力,但这个但这个锻炼的层次和涉及面都比较窄锻炼的层次和涉及面都比较窄。
现代软件开发的规模,使。
现代软件开发的规模,使得团队合作在大多数情况下成为必须。
而且部分数据结构只有在得团队合作在大多数情况下成为必须。
而且部分数据结构只有在处理大规模输入的复杂问题时才能体现出优势,编写小型程序很处理大规模输入的复杂问题时才能体现出优势,编写小型程序很难使学生真正认识到该数据结构存在的意义。
难使学生真正认识到该数据结构存在的意义。
6存在问题及解决思路存在问题及解决思路l解决解决l课程设计题目覆盖的课程设计题目覆盖的知识点应尽可能避免单一知识点应尽可能避免单一,要采用,要采用启启发式发式的设计思路,引导学生围绕课程设计目标,通过查找的设计思路,引导学生围绕课程设计目标,通过查找与分析有关参考资料,进行探究式的学习,激发创造的意与分析有关参考资料,进行探究式的学习,激发创造的意识和能力。
所以,在题目设计和实施中,不应该只是识和能力。
所以,在题目设计和实施中,不应该只是“手手把手把手”地教,要给学生留出发挥想像力和创造力的空间;
地教,要给学生留出发挥想像力和创造力的空间;
l题目的题目的规模应充分大规模应充分大,并且努力使学生对规范性的软件开,并且努力使学生对规范性的软件开发有初步体验,在一定程度上使得学生的工程化能力和团发有初步体验,在一定程度上使得学生的工程化能力和团队合作能力得到锻炼。
队合作能力得到锻炼。
l而上述两方面的考虑若要取得真正好的效果,还必须有一而上述两方面的考虑若要取得真正好的效果,还必须有一套行之有效的套行之有效的激励机制激励机制,既可以公平地判定每个学生作为,既可以公平地判定每个学生作为个体的能力,又可以鼓励团队精神,同时还可以鼓励学生个体的能力,又可以鼓励团队精神,同时还可以鼓励学生开拓创新思维,主动进行研究性学习。
开拓创新思维,主动进行研究性学习。
7实践实践综合性课程设计综合性课程设计l数据结构基础数据结构基础综合性课程设计的作用综合性课程设计的作用l存在问题及解决思路存在问题及解决思路l课程设计的课程设计的l内容选择内容选择l实施方法实施方法l激励手段激励手段l相关文档及辅助教材相关文档及辅助教材8课程设计的内容选择课程设计的内容选择l题目应避免涉及单一知识点;
题目应避免涉及单一知识点;
l为锻炼学生进行研究性学习的能力,可设计算法效为锻炼学生进行研究性学习的能力,可设计算法效率分析比较类型的题目;
率分析比较类型的题目;
l采用启发式教学思路,设计有多种解法的题目,可采用启发式教学思路,设计有多种解法的题目,可以给学生留出发挥想像力和创造力的空间,锻炼学以给学生留出发挥想像力和创造力的空间,锻炼学生灵活运用知识分析问题和解决问题的能力。
生灵活运用知识分析问题和解决问题的能力。
浙江大学建设有全球著名的程序设计竞赛练习网站浙江大学建设有全球著名的程序设计竞赛练习网站(http:
/1)lPerformanceMeasurement(Printintegers)lTheWorldsRichestPeople(各种排序的组合)(各种排序的组合)lHashing(拓扑排序、哈希映射)(拓扑排序、哈希映射)lBonus:
WaitinginLine(队列模拟)(队列模拟)lBonus:
AttackofPanda(3种解,并查集最佳)种解,并查集最佳)10课程设计的内容选择课程设计的内容选择l题目集(题目集(22)lPerformanceMeasurement(MAXIMUMSUBMATRIXSUM)lBinarySearchTree(不同输入顺序)(不同输入顺序)lAttackofPanda(3种解,并查集最佳)种解,并查集最佳)lBonus:
SortPoems(大数据结构排序)(大数据结构排序)lBonus:
UniversalTravelSites(网络流、哈希)(网络流、哈希)11课程设计的内容选择课程设计的内容选择l题目集(题目集(33)lPerformanceMeasurement(XN)lHarryPottersExam(最短路径应用)(最短路径应用)lSortPoems(大数据结构排序)(大数据结构排序)lBonus:
LinealTree(树的建立与遍历)(树的建立与遍历)lBonus:
Utopia(求树结点的最低公共祖先)(求树结点的最低公共祖先)12课程设计的内容选择课程设计的内容选择l题目集(题目集(44)lPerformanceMeasurement(search)lCountingLeaves(树的建立与遍历)(树的建立与遍历)lBattleOverCities(连通集、关节点、最小生成树)(连通集、关节点、最小生成树)lBonus:
BinarySearchTree(不同输入顺序)(不同输入顺序)lBonus:
Hashing(拓扑排序、哈希映射)(拓扑排序、哈希映射)13课程设计的实施方法课程设计的实施方法l将学生分成三人小组,分工负责程序编写、测试以将学生分成三人小组,分工负责程序编写、测试以及实验报告撰写工作;
及实验报告撰写工作;
l一份完整的实验报告至少应包含以下四部分内容:
一份完整的实验报告至少应包含以下四部分内容:
l
(一)实验内容简介
(一)实验内容简介l
(二)算法说明
(二)算法说明l(三)测试结果(三)测试结果l(四)分析与探讨(四)分析与探讨l附录:
源代码附录:
源代码l独立性声明独立性声明14课程设计的激励手段课程设计的激励手段l程序员、测试员、文档员的工作难度不同,其工作的分数程序员、测试员、文档员的工作难度不同,其工作的分数分配也应不同。
例如我们采用分配也应不同。
例如我们采用50:
30:
2050:
20的分配制度,这样的分配制度,这样只有在三个课程设计中将三种角色分别体验一遍,才有可只有在三个课程设计中将三种角色分别体验一遍,才有可能得到满分能得到满分100100;
l应对应对“分析与探讨分析与探讨”部分特别关注,及时发现并鼓励学生部分特别关注,及时发现并鼓励学生的创新思维;
的创新思维;
l由于每个学生的能力水平不同,应使组内每个人的成绩相由于每个学生的能力水平不同,应使组内每个人的成绩相对独立,不依赖于其他组员的表现而得分;
对独立,不依赖于其他组员的表现而得分;
l只有三项工作都完美的组,才会获得特别表扬(红人榜)。
只有三项工作都完美的组,才会获得特别表扬(红人榜)。
这时学生会在完成了自己工作的情况下,对队友提供一定这时学生会在完成了自己工作的情况下,对队友提供一定帮助,以获得团队的荣誉。
帮助,以获得团队的荣誉。
15实践实践综合性课程设计综合性课程设计l数据结构基础数据结构基础综合性课程设计的作用综合性课程设计的作用l存在问题及解决思路存在问题及解决思路l课程设计的课程设计的l内容选择内容选择l实施方法实施方法l激励手段激励手段l相关文档及辅助教材相关文档及辅助教材16相关文档及辅助教材相关文档及辅助教材l实验报告要求实验报告要求;
学生报告样例学生报告样例l对一本院校推荐辅助教材:
对一本院校推荐辅助教材:
何钦铭、冯雁、陈越,何钦铭、冯雁、陈越,数据结构课程设计数据结构课程设计,浙江大学出版社,浙江大学出版社,20072007l88个案例详解:
个案例详解:
表达式求值(栈)、文件目录结构显示表达式求值(栈)、文件目录结构显示(树遍历)、拯救(树遍历)、拯救007007(最短路)、迷宫(最短路)、迷宫(DFS,BFSDFS,BFS)、)、快速排序分析、插队买票(快速排序分析、插队买票(hash+hash+队列)、搜索算法分析、队列)、搜索算法分析、任务调度(贪心)任务调度(贪心)l88个案例习题:
个案例习题:
搜索树分析、检查网络(并查集)、宇搜索树分析、检查网络(并查集)、宇宙旅行(网络流)、室内布线(最小生成树)、最小套圈宙旅行(网络流)、室内布线(最小生成树)、最小套圈(分治)、商店购物(动态规划)、熊猫烧香(多解)、(分治)、商店购物(动态规划)、熊猫烧香(多解)、神秘国度的爱情故事(自己推导解法)神秘国度的爱情故事(自己推导解法)l光盘光盘17研究研究精研课程建设精研课程建设l研究型教学的探索研究型教学的探索l高级数据结构与算法分析部分高级数据结构与算法分析部分l知识点分割知识点分割l课堂研讨环节设计课堂研讨环节设计l实验环节设计实验环节设计l课程总体评分方法课程总体评分方法18研究型教学的探索研究型教学的探索l存在问题存在问题l科学研究的一般方法科学研究的一般方法l研究型课程教学模式研究型课程教学模式l学生收获学生收获l浙江大学计算机学院浙江大学计算机学院“精研课程精研课程”19研究型教学的探索研究型教学的探索l存在问题存在问题以以知识的传授为核心,重点关注为核心,重点关注教师教师讲了什么关注关注学生学生应该学什么关心关心学生学生究竟究竟学到了什么针对针对探探索索和和批批判判这两个这两个关键因素,关键因素,培养学生培养学生主动获主动获取取知识、知识、进一步综进一步综合已有的合已有的知识去知识去创创造新知造新知识识的的能能力力关注点基本上局限于关注点基本上局限于知识点本身,教学过程中便不可