“算法设计与分析”本科课程教学研究.docVIP

“算法设计与分析”本科课程教学研究.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
“算法设计与分析”本科课程教学研究   摘要:“算法设计与分析”不仅是计算机科学与技术学科的核心课程之一,也被很多高校的电子信息及数学等专业列为专业必修课程。本文从教材选择、兴趣培养、理论教学、科研方法及实践能力培养等方面探讨有效教学的方法,旨在提高教学质量。   关键词:算法设计与分析;教学研究;教学质量   中图分类号:G642 文献标识码:B      1引言      “算法设计与分析”是计算机科学与技术学科的核心课程之一,受到越来越多的重视。对于一个计算机专业的学生,学好算法课是必要且是必须的。“算法设计与分析”这门课程的主要目的不仅是讲授计算领域中不同问题的标准算法,更重要的是分析其算法复杂度,并且在诸多可行算法中选择一种时间或者空间效率最高的方法。美国著名算法大师Donld Knuth认为“计算机科学就是算法的研究”,他主持设计的TeX排版系统被誉为是“不存在Bug的系统”,这是以大师严密的算法设计基础为保证的。前微软高级副总裁李开复博士认为“计算机科学实质是人工智能”,而人工智能则是模拟人类思维的一种算法科学。计算机算法的应用已经遍及人类社会的各个领域,包括计算机软硬件机器学习、电信及互联网、一般制造业、经济与金融业等。算法技术不仅在计算机领域,而且在其它理工及社会科学领域都有极其广泛的应用。任何问题的求解,都离不开一般性的算法设计原则,在笔者执教的学校,数学和信息安全两个非计算机专业已将该课程列为必修课程。因此,提高“算法设计与分析”课程教学水平有着极其深远的意义和重要的作用。      2教材选择      近年来,国内引进了一些优秀的国外教材,其中的《算法导论》是国际上被引用频率最高而且知名度也最高的专著,但是由于它篇幅过长,在国外多用于两个学期的教学课程,因此难以将该教材系统地用于学时有限的本科教学;《算法设计与分析》是美国工程院院士UIIman等三位大师合著的优秀教材,该书的目的是将算法领域的基础研究结果进行综合,重点在于对算法思想过程的理解,而不是算法的实现细节和具体的编程技巧。但是该书内容和习题难度都较大,因此更适合作为研究生教材。国内的专家王晓东和周培德所编写的教材也很优秀。这些教材都被我们重点推荐给学生作为参考书。   出于上述考虑,我们最终选择了沙特学者M.H.Alsuwaiyel所著的《算法设计技巧与分析》作为教材,该书基本覆盖了传统算法设计的主要内容,此外还包含了概率算法和近似算法等一些基本内容,这些内容在传统教材中并不多见,是一些高端算法经常使用的方法。虽然该书不是欧美传统名校教材,但作者在南加州大学攻读获得硕士和博士学位,因此该书吸收了欧美优秀教材的风格,且文笔简洁流畅。该书的内容及习题难度适中,便于课堂教学及自学,是一本适合本科教学的好书。   如果一个本科生能够学好本教材,并在后面的硕士阶段,学好UIIman的《算法设计与分析》,之后再将《算法导论》学习好,则必将打下坚实的算法理论基础,为终身的职业生涯所受用。      3兴趣培养      本课程的教学对象是大学理工科三年级学生,要求他们不仅具备数学分析、概率及线性代数的基础,而且具备离散数学和数据结构等计算机专业基础知识。很多学生刚学过数据结构,翻开算法教材,有似曾相识的感觉。教材中确实有部分章节如数据结构,排序算法,图的遍历等取材于数据结构课程。因此会有些学生学习热情不高,认为是在学习重复的课程。   针对这一情况,首先我们会教育学生两课程的目的是不一样的。数据结构的目的是教会学生如果对现实世界中的事物及对其信息处理过程建立数据模型;而算法设计课程的重点是算法的效率问题,其主题是算法的空间和时间复杂度,主要论述如何运用算法技术改进已有一些算法的效率,或者对复杂问题进行求解。   近年来,计算机硬件和软件技术发展迅速,CPU、外存、内存的性能在持续提高,价格却大幅度下跌。因此有很多人认为,软件的效率已经不再重要了,只要提高计算机系统的配置就足够了。这种观点显然是错误的。   我们在第一节的绪论课中引用《算法导论》的例子,深入浅出地阐明了算法效率的重要性。设有两个排序算法:其一是插入排序,时间复杂度为c1 n*n, c1是一个不依赖于n的常数;其二是归并排序,时间复杂度为c2 nlog n,c2是一个不依赖于n的常数,一般情况下c1 c2。n是待排序数列的长度。对于这两个实质上属于不同数量级的算法,很多人并未真正感觉到log n比n优化多少,甚至当n较小时,插入排序比归并排序还要快速一些。但是我们必须认识到,当n逐渐增大到一定数值以后,无论c1比c2小多少,归并排序均比插入排序快速。在大规模数据集上排序结果的对比,则效果更为显著。假若在高性能计算机A(10亿指令/秒)上运行插入排序,而在

文档评论(0)

yingzhiguo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5243141323000000

1亿VIP精品文档

相关文档