算法与数据结构课程标准.doc
《算法与数据结构课程标准.doc》由会员分享,可在线阅读,更多相关《算法与数据结构课程标准.doc(9页珍藏版)》请在冰豆网上搜索。
“算法与数据结构”课程标准
课程名称:
算法与数据结构课程代码:
适用专业:
软件技术专业总学时数:
72学分:
一、课程定位
开设性质:
专业必修课
课程类型:
B类(理论+实践)
前导课程:
程序设计基础
后继课程:
Web应用程序开发、数据库程序开发
平行课程:
面向对象程序设计、数据库应用技术
实践活动:
算法设计与优化研讨、程序展示与答辩等。
设计理念:
全面掌握行业领域中解决问题的分析与设计方法,激发专业认同和学习自信心,增强逻辑思维能力,提高学生在行业中的岗位竞争力。
以领域中常用数据结构的分析与设计、相关算法的实现与优化为重点,结合学生目前在课程体系中已经具备的专业能力,选取和编排教学内容;以会分析、能编程、敢评论为主线,设计开发教学单元及系列实践活动;注重课上课下相结合,改进创新学习模式,以学生为主体,促进学生全面发展。
二、课程目标
通过本课程的学习,学生应在数据结构基础知识、常用数据结构分析与设计、算法实现与优化、经典算法的认知等方面达到如下要求:
1.能简述数据结构相关的常用术语,总结逻辑结构和物理结构的内容,分析算法的时间复杂度。
2.能对线性逻辑结构、树状逻辑结构、图状逻辑结构的数据特征进行总结分析和设计;能够熟练地编写解决物理结构中相关问题的算法。
3.能根据数据特征不同,熟练使用排序和查找算法;会分析和总结算法的优缺点。
进一步,完成经典问题的分析与实现,能熟知3~5个经典算法。
三、课程内容
单元1:
数据结构与算法基础知识(4学时)
教学目标:
1.能简述线性结构、树状结构、网状结构的数据特征;
2.能总结逻辑结构和物理结构的区别;
3.能描述算法的基本特性;
4.能分析算法的效率(时间复杂性)。
教学要点:
1.课程导学:
课程定位与目标,教学内容与方法,考评模式和纪律要求;
2.三种基本结构的特征;
3.逻辑结构和物理结构;
4.算法的效率。
教学设计:
本次课为前两次课。
首先是导学,讲解本门课程的课程定位与目标、教学内容与方法、考评模式和学习要求,描绘学习情境,激发学生对本门课程的学习兴趣,调动学生们的积极性、主动性,以保证教学效果和效率。
其次是课程相关的一些基础知识和常用术语简介。
通过PPT了解常见问题的分析和解决过程,引导并总结三种基本结构。
通过和学生互通和结对讨论,让学生自己总结三种结构的基本数据特征,教师再做总结与补充,其中要突出教学重点内容。
接下来给出一些算法实例,解决同一个问题的不同算法,让学生讨论算法的效率,教师再总结算法效率的分析方法,给出实例,师生共同讨论结果。
最后课程总结和课业布置,说明下次课的安排。
课业布置:
1.根据教师提供的教学资料,进一步对课程基础知识总结与复习;
2.小组长找3个算法一起讨论算法的时间复杂度;
3.根据教师提供的学习资料,提前自主学习关于线性结构的内容。
实践活动:
小组讨论算法的时间复杂度。
单元2:
线性结构(20学时)
教学目标:
1.能熟练编写顺序表的创建、输出、插入、删除、排序等算法;
2.能熟练编写链表的创建、输出、插入、删除、排序等算法;
3.能总结与简述顺序表与链表的优缺点;
4.能用任何一种物理实现方法解决线性结构中的实际问题。
教学要点:
1.线性逻辑结构的实现方法之一--顺序表的插入、删除、排序算法;
2.线性逻辑结构的实现方法之二—链表的创建、输出、插入、删除、排序算法;
3.实际应用算法。
教学设计:
教师:
准备课程资料及相关练习题目,包括“线性结构”、“顺序表相关算法”、“链表相关算法”三个要点。
学生利用课程资料通过课上和课下相结合的方式结对完成自主性学习,学习过程中可以随时通过网络或课堂寻求教师个性化辅导解决学习中存在的问题。
在课堂上教师要根据学生学习情况及时解决一些共性问题,总结需要注意思考的重点,并通过组织“小组展示”、“组内讨论”、“组间交流”等活动,让同学们完成知识内化,并最终通过教师的单元任务答辩。
课业布置:
1.顺序表的应用题目;
2.链表的应用题目。
实践活动:
1.讨论顺序表的插入和删除操作算法。
2.讨论改进的排序算法。
3.小组展示顺序表一套程序作品。
4.讨论链表的创建算法。
5.讨论链表的插入和删除算法。
6.展示链表的一套程序作品。
单元3:
栈(8学时)
教学目标:
1.能准确概述栈相关的基本概念和数据操作特征;
2.能熟练编写栈的初始化、入栈、出栈等相关基本算法;
3.能用栈的基本算法解决实际问题。
教学要点:
1.栈的相关概念和数据操作特征;
2.栈的应用。
教学设计:
教师:
准备课程资料及练习题目,包括“栈的定义”、“栈的实现及操作算法”、“栈的应用”三个要点。
学生利用课程资料通过课上和课下相结合的方式结对完成自主性学习,学习过程中可以随时通过网络或课堂寻求教师个性化辅导解决学习中存在的问题。
在课堂上教师要根据学生学习情况及时解决一些共性问题,总结需要注意思考的重点,并通过组织“小组展示”、“组内讨论”、“组间交流”等活动,让同学们完成知识内化,并最终通过教师的单元任务答辩。
课业布置:
1.栈的应用。
实践活动:
1.讨论现实生活中关于栈的实例,总结栈的数据操作特征。
2.讨论栈的应用性。
3.小组展示栈一套程序作品。
单元4:
队列(6学时)
教学目标:
1.能准确概述队列相关的基本概念和数据操作特征;
2.能熟练编写队列的初始化、入队、出对等相关基本算法;
3.能用队列的基本算法解决实际问题。
教学要点:
1.队列的相关概念和数据操作特征;
2.队列的应用。
教学设计:
教师:
准备课程资料及练习题目,包括“队列定义”、“队列实现及操作算法”、“队列应用”三个要点。
学生利用课程资料通过课上和课下相结合的方式结对完成自主性学习,学习过程中可以随时通过网络或课堂寻求教师个性化辅导解决学习中存在的问题。
在课堂上教师要根据学生学习情况及时解决一些共性问题,总结需要注意思考的重点,并通过组织“小组展示”、“组内讨论”、“组间交流”等活动,让同学们完成知识内化,并最终通过教师的单元任务答辩。
课业布置:
1.队列的应用。
实践活动:
1.讨论现实生活中关于队列的实例,总结栈的数据操作特征。
2.讨论队列的应用性。
3.小组展示队列一套程序作品。
单元5:
树(22学时)
教学目标:
1.能简述树的定义,准确概述树状逻辑结构的数据特征;
2.能简述二叉树的定义,准确概述二叉树数据特征;
3.能熟练编写二叉树的定义、实现及相关基本算法;
4.能熟练进行二叉树与树之间的转换;
5.能熟练编写哈夫曼树的定义、实现及相关基本算法。
教学要点:
1.递归算法;
2.二叉树的数据特征;
3.二叉树的定义实现及三种遍历算法;
4.二叉树的应用;
5.哈夫曼树的定义实现和应用。
教学设计:
教师:
准备课程资料及练习题目,包括“树的定义及实现”、“树的算法”、“二叉树的定义及实现”、“二叉树的算法”、“二叉树的应用”、“哈夫曼树的定义及相关算法”六个要点。
学生利用课程资料通过课上和课下相结合的方式结对完成自主性学习,学习过程中可以随时通过网络或课堂寻求教师个性化辅导解决学习中存在的问题。
在课堂上教师要根据学生学习情况及时解决一些共性问题,总结需要注意思考的重点,并通过组织“小组展示”、“组内讨论”、“组间交流”等活动,让同学们完成知识内化,并最终通过教师的单元任务答辩。
课业布置:
1.树的应用。
2.二叉树算法的应用。
实践活动:
1.讨论递归算法-汉诺塔问题。
2.讨论现实生活中关于树状结构的实例,总结树的数据操作特征。
3.讨论树的物理实现的困难性。
4.讨论二叉树的三种遍历的区别。
5.讨论哈夫曼树的应用。
6.小组展示队列一套程序作品。
单元6:
查找与排序(12学时)
教学目标:
1.能熟练编写顺序查找算法、二分法查找算法;
2.能熟练编写冒泡排序、选择排序、插入排序、希尔排序、快速排序算法;
3.能总结排序算法的优缺点,并应用。
教学要点:
1.二分法查找算法;
2.插入排序、希尔排序、快速排序。
教学设计:
教师:
准备课程资料及练习题目,包括“查找算法”、“排序算法”、“实际应用问题”三个要点。
学生利用课程资料通过课上和课下相结合的方式结对完成自主性学习,学习过程中可以随时通过网络或课堂寻求教师个性化辅导解决学习中存在的问题。
在课堂上教师要根据学生学习情况及时解决一些共性问题,总结需要注意思考的重点,并通过组织“小组展示”、“组内讨论”、“组间交流”等活动,让同学们完成知识内化,并最终通过教师的单元任务答辩。
课业布置:
查找排序实际问题的解决。
实践活动:
1.讨论查找算法的应用性的不同。
2.讨论排序算法的应用性的不同。
3.小组展示队列一套程序作品。
四、考评方式
1.评价指标
课堂表现5%、出勤情况5%、平时表现20%、阶段答辩30%、期末答辩40%。
2.评价说明
在考核中,教师应注重对学习者学习能力、学习态度和学习方法的评价和指导,不可拘泥于统一的进度和考核标准,而应该为每个学习者制定切合其自身的学习进度表和考核标准,更加关注学习者是否进步,是否有明确的职业发展目标等综合发展情况。
五、资源配置
1、教学环境与设备
教学应在能够接入互联网、便于进行小组讨论交流和开发的一体化教室开展。
每名学习者应配有1台联网高性能计算机。
2、教学参考资料
名称
书号/介绍
出版社/类型
版次
编者姓名
数据结构
978-7-115-18577-8
人民邮电
一
王学军
数据结构习题与解答
7-89494-012-7
清华大学
一
李大友
数据结构
7-302-00984-8
清华大学
二
严蔚敏
六、实施建议
建议学习者采用结对学习、小组交流的形式开展学习,养成独立自主学习习惯及团队协作能力。
学习过程依据自身情况开展,可急可缓,不必贪多求快,务求扎实,将所学外化于内,运用自如。
建议教师采用翻转课堂方法开展教学,为学习者提供多种形式的学习资料,座位安排要便于讨论交流,学习环境尽量宽松开放,过程中要一对一个性化辅导,帮助学习者养成独立自主学习习惯,使其敢于学习,善于学习,乐于学习。