- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
“数据结构”教学过程中应重视算法设计与分析能力的培养 摘要:本文分析了算法设计与分析在“数据结构”教学中地位和作用,讨论了与算法有关的内容在教学中如何体现,总结了培养算法设计与分析能力的方法。 关键词:数据结构;算法设计与分析;教学方法 中图分类号:G642 文献标识码:B 文章编号:1672-5913(2007)16-0027-03 “数据结构”是计算机科学与技术专业的一门重要的专业基础课,在整个专业教学体系中占有重要地位。这门课程学习的好坏,对学生学好后续课程如编译原理、操作系统、数据库系统、计算机网络等以及培养学生分析问题、解决问题的能力和软件设计与开发的能力起着至关重要的作用。这门课程不仅涉及的概念多、内容广,而且对数学基础有一定的要求,解题又需要有一定的技巧,因此,相当一部分学生感到理解书上的基本概念并不难,基本操作的实现也都听得懂,可是一到解决具体问题时就觉到困难重重,对于有一定难度的算法设计题,更是感到无从下手。因此,如何学好、怎样教好“数据结构”成为学生和教师普遍关注的一个问题。 1算法设计与分析在数据结构课程中的定位 算法是对解决问题所采用的方法的描述。因此,在教学过程中应强调算法的概念,在算法设计的同时培养算法分析的习惯,这也是这门课程中能力培养的核心问题。“数据结构”课程的能力培养目标应当是:要求学生在学完这门课程后应能够掌握本学科系统分析、解决问题的基本科学方法。这种基本科学方法在很大程度上受到教师课堂讲授思想的影响。大学课堂讲授的内容主要分为两个方面,一个是具体的知识,另一个就是分析问题和解决问题的科学方法,而后者通常要在教师的教学过程中来体现。科学的教学方法能够使得教师所传授的知识易于被学生有效接受和消化,同时其解决问题的思想方法也潜移默化被学生所吸纳转变为一种潜在的能力。因此,在“数据结构”课程的讲授中应当避免就概念而概念、就结构而结构的简单教学模式,而应当结合每个具体知识单元的特点传授分析问题、解决问题的一般思路和方法。这就要求教师要不断提升自己的知识层次和知识的综合能力,并转变观念,使自己的地位逐渐由讲解员过渡为导航员。这样才能使学生由被动的旁听者变为参与实践者,从而达到对学生综合能力的培养目标。 2算法设计与分析在数据结构课程教学中的体现 在“数据结构”的教学内容中,完成同一功能有多个算法的例子比比皆是。例如串的模式匹配。假设目标串和模式串的长度分别为N和M,由于朴素的模式匹配算法需要回溯,使得算法的时间复杂度为O(N×M),要想提高模式匹配算法的性能,就应该着眼于消除回溯。这就引出了快速模式匹配算法(KMP算法)。消除了回溯的模式匹配算法的时间复杂度成为O(N+M),算法的性能得到了显著的提高[1]。 再比如,对三元组表示的N×M矩阵的转置运算就可以提出三种算法[2]。首先,最简单和直观的算法是将源三元组表中元素的行号和列号互换,然后再按照三元组要求的按行排列的要求重新排序。如果采用直接选择或插入的方式进行排序,那么这个过程的时间复杂度应为O(N2×M2)。其次,注意到源三元组中的列就是目的三元组中的行这一特点,引出第二个算法。可以考虑对源三元组进行多趟扫描,第一趟处理源三元组中第1列元素,第二趟处理源三元组中第2列元素,……,第M趟处理源三元组中第M列元素,第k趟扫描将源三元组中第k列的元素顺次复制到目的三元组中。这个处理过程的时间复杂度是O(N×M2),优于前一种算法。第二个算法还可以进一步优化吗?答案是肯定的。换一种思路来考虑,就可以提出第三种算法(快速转置算法):首先计算出源三元组中每一个元素在目的三元组中的位置,然后依次将源三元组中的元素按照预先计算出的位置放置在目的三元组中。这个过程只需先后扫描源三元组两次,时间复杂度为O(N×M)。当然,为了存放位置信息,需要一定的额外存储空间。 按照对算法的效率分析来对教学内容进行总结和归纳,是培养学生算法分析能力的另一种方式。对于数据的排序,通常是按照插入、选择、交换等分类进行教学,在对这一部分内容进行总结时,则可按算法的时间性能进行归类。在对N个元素进行排序时,直接选择、插入和冒泡排序算法都是通过两重循环来实现的,思路直观、简单,但效率不高(O(N2))。采用“分而治之”的思想,可以引出快速、堆和归并排序三种算法,它们的效率都可达到O(Nlog2N)。通过对比较树的分析,推导出基于比较的算法的最好平均时间性能为O(Nlog2N),由此得出结论:要想得到效率更高的排序算法,就不能采用基于比较的方法。顺着这个思路,可以进一步介绍具有线性时间复杂度的基数排序和计数排序算法。可见,在这里,算法的效率分析是主线,顺着这根主线,可以很好地把排序
您可能关注的文档
- Java课程教学的探析.doc
- .NET框架下基于AJAX的Web数据分页研究.doc
- .NET平台下移动Agent系统开发技术研究.doc
- .NET平台下MVC设计模式的实现策略.doc
- .NET验证机制在Web表单验证中的应用研究.doc
- (0,mf-m+1)图的正交(0,f)因子分解.doc
- “120”智能指挥调度算法设计与实践.doc
- “2010年英特尔多核大学计划高级师资研修班”侧记.doc
- “2+0.5+0.5”人才培养模式下综合实训的设计.doc
- “3S” 技术在实现道路交通智能管理中的集成应用.doc
- TCECS 1876-2025 改性三聚氰胺保温板应用技术规程.pdf
- 2025年公务员常识判断500题实战演练与解析试卷.docx
- 2025年公务员常识判断500题实战模拟试卷.docx
- 2025年公务员常识判断500题高分冲刺试卷.docx
- 2025年公务员常识判断500题考点梳理特训试卷.docx
- 2025年公务员常识判断500题真题训练试卷.docx
- 2025年公务员常识判断500题知识点强化试卷.docx
- TCECS 1884-2025 建筑外围护系统智能无损检测技术规程.pdf
- 2025年公务员常识判断500题押题预测技巧试卷.docx
- 2025年公务员常识判断500题特训试卷及答案解析.docx
最近下载
- 深信服PT1超融合hcl题库.docx VIP
- 混凝土搅拌输送车岗位安全操作规程与混凝土搅拌运送汽车安全管理制度.docx VIP
- 物理知识点初二.doc VIP
- 物理知识点初二下册.docx VIP
- 燃烧学 第3版 第4章 着火理论.pptx VIP
- 18R409 管道穿墙、屋面防水套管48.pdf VIP
- 深圳市非承重墙体与饰面工程施工及验收标准SJG 14-2018.pdf
- PEMS相关模板(可用性确认计划或可用性总结性测试计划、可用性确认报告或可用性总结性测试报告).pdf VIP
- 全国中学生物理竞赛预赛(高二组)交变电流有效值计算考核试卷.doc VIP
- 国家开放大学《美学原理》形考作业5参考答案.doc VIP
有哪些信誉好的足球投注网站
文档评论(0)