还剩6页未读,继续阅读
文本内容:
《数据结构》实验教学大纲课程名称数据结构Data Structure课程代码M学分/总学时4/80开课单位物理与电子信息工程学院面向专业计算机专升本
一、课程的性质、目的和任务通过《数据结构》实验的开设,使学生学会分析数据的特性,给出数据结构的描述,写出相应的二学习本课程学算法,培养和训练学生编写复杂程序的能力,使学生的编程能力有一个质的提高生应掌握的前设课程知识C#计算机导论、语言程序设计、离散数学
三、项目及学时分配时数序号项目名称项目类别项目类型要求每组人数课内课外实验一线性表及其应用84专业基础验证性必做1实验二堆栈及其应用42专业基础验证性必做1实验三队列及其应用42专业基础综合性必做1实验四二叉树及其应用22专业基础综合性必做1哈夫曼树及其应用实验五44专业基础综合性必做1高速公路交通网存实验六44专业基础综合性必做1储实验七学生成绩管理64专业基础综合性必做1填表说明1“项目类别”项请填写
①基础;
②专业;
③专业基础;2“项目类型”项填写要求“实验课程”请填写
①验证性;
②综合性;
③设计研究;
④其他;“课程设计”请填写
①验证性;
②综合性;
③设计研究;
④其他;“实训课程”请填写
①基本实训;
②综合实训;
③设计开发;3“要求”项请填写
①必做;
②选做;
四、教学方法要求学生在课外阅读参考书目,理解算法与数据结构的有关概念、原理、方法和技巧,自主完成有关算法的实现
五、教学内容及要求实验一线性表及其应用教学目的
1、熟练掌握顺序存储的线性表的定义、基本操作
2、熟练掌握链式存储的线性表的定义、基本操作
3、熟悉单链表的基本操作
4、了解单链表的实际应用
5、了解双链表的基本操作教学要求
1、掌握两种线性表的异同教学时数8主要设备
1、PC机+Windows操作系统+HS
2、Visual Studio2008软件或Visual Studio2010实验内容
1、实现一下顺序表的基本操作创建顺序表,顺序表的初始化,顺序表的插入、删除操作,查询,求表长度,清空顺序表操作等
2、实现学生成绩表的应用实现基于顺序表的成绩添加、删除和查询操作
3.实现以下单链表的基本操作创建单链表,单链表的初始化,单链表的插入操作(头插法、尾插法和中间结点)、删除操作(头结点、尾结点、中间结点),查询,求表长度,清空单链表操作等
4.实现学生成绩表的应用实现基于单链表的成绩添加、删除和查询操作选做一成绩排序在第二题(必做题)的基础上,实现班级成绩按升序或降序的排序选做二成绩合并在第二题的基础上,实现两个班级的成绩合并操作选做三扩展,学生成绩可以包括多门功课选做四成绩排序(单链表)在第二题的基础上,实现班级成绩按升序或降序排序(难点单链表链的改变)选做五成绩合并(单链表)在第二题的基础上,实现两个班级的成绩合并操作选做六扩展,学生成绩可以包括多门功课选做七双链表的基本操作实验二堆栈及其应用教学目的
1、熟悉堆栈的基本操作
2、了解堆栈的实际应用
3、了解链栈的基本操作教学要求掌握堆栈的基本操作及其应用教学时数4主要设备
1、PC机+Windows操作系统+HS
2、Visual Studio2008软件或Visual Studio2010实验内容1,实现以下顺序栈的基本操作创建顺序栈,顺序栈的初始化,顺序栈的入栈操作、出栈操作,求栈顶元素,求顺序栈长度,清空顺序栈操作等
2.用顺序栈解决火车车厢重排问题实现基于单链表的成绩添加、删除和查询操作
3.实现以下链栈的基本操作创建链栈,链栈的初始化,链栈的入栈操作、出栈操作,求栈顶元素,求链栈长度,清空链栈操作等
2.用链栈解决火车车厢重排问题选做一括号匹配读入表达式,判断其中的括号匹配情况可以将其扩充到更多的匹配问题实验三队列及其应用教学目的
1、熟悉队列的基本操作
2、了解队列的实际应用
3、了解链队的基本操作教学要求掌握队列的基本操作及其应用教学时数4主要设备
1、PC机+Windows操作系统+HS
2、Visual Studio2008软件或Visual Studio2010实验内容
1.实现以下顺序队列的基本操作创建顺序队列,顺序队列的初始化,顺序队列的入队操作、出队操作,求队首元素,求队列长度,清空顺序队列操作等
2.用顺序队列解决银行排队叫号问题
3.实现以下链队列的基本操作创建链队列,链队列的初始化,链队列的入栈操作、出队列操作,求队首元素,求链队列长度,清空链队列操作等
4.用链队列解决火车车厢重排问题选做一杨辉三角问题用循环队列输出宴会三角选做二hanoi塔问题分别用堆栈和队列实现hanoi塔的移动问题实验四二叉树及其应用教学目的:
1、理解二叉树的基本概念
2、熟悉链式二叉树的基本操作
3、了解链式二叉树的实际应用教学要求掌握二叉树基本操作,了解二叉树的应用教学时数4主要设备
1、PC机+Windows操作系统+HS
2、Visual Studio2008软件或Visual Studio2010实验内容
1.实现以下链式二叉树的基本操作链式二叉树的初始化、结点插入、删除等等基本操作
2.用链式二叉树解决快速搜索磁盘文件问题选择一二叉树的宽度优先搜索算法搜索步骤
1.先搜索根结点,
2.获取根结点的所有子结点
3.搜索子结点的所有子结点,循环本步实验五哈夫曼树及其应用教学目的
1、理解哈夫曼树的基本概念
2、熟悉哈夫曼树的基本操作
3、了解哈夫曼树的实际应用教学要求掌握哈夫曼树生成过程,了解哈夫曼树的使用教学时数4主要设备
1、PC机+Windows操作系统+HS
2、Visual Studio2008软件或Visual Studio2010实验内容
1.哈夫曼树的构造实现选做一哈夫曼编码的实现给定指令集的调用概率,根据哈夫曼树原理,生成对应指令的编码集选做二根据指定的二叉树先序遍历和中序遍历组合,生成二叉树选做二根据指定的二叉树后序遍历和中序遍历组合,生成二叉树实验六高速公路交通网存储教学目的
1、理解图的基本概念
2、熟悉邻接矩阵的基本操作
3、了解邻接表的实际应用
4、用图解决交通网问题教学要求基本了解图的存储教学时数4主要设备
1、PC机+Windows操作系统+HS
2、Visual Studio2008软件或Visual Studio2010实验内容
1.图的基本操作
2.邻接矩阵实现图的基本操作
3.邻接表实现图的基本操作
4.用邻接矩阵和邻接表解决高速公路交通网的存储问题选做一图的最短路径问题选做二最小生成树问题(普里姆算法和克鲁斯卡尔算法)选做三关键路径问题实验七学生成绩管理教学目的
1、理解查找和排序的基本概念
2、熟悉顺序查找、折半查找的基本操作
3、熟悉选择排序、交换排序、快速排序的基本操作
4、掌握解查找与排序的应用
5、了解简单系统的分析过程和模块分解过程
6、了解简单系统的实现过程教学要求熟练使用排序算法和查找算法教学时数8主要设备
1、PC机+Windows操作系统+HS
2、Visual Studio2008软件或Visual Studio2010实验内容综合问题实现学生成绩管理要求
1.成绩批量录入录入指定个学生的成绩,学生成绩包括语文、数学、计算机和总分
2.成绩排序指定科目和指定排序算法,排序算法可以是选择、交换或者快速排序中,要求提供3种以上的排序算法
3.学生成绩添加向步骤2指定排序后的成绩里面添加一位学生
4.学生成绩删除从步骤2指定排序后的学生删除某位同学的成绩
5.学生成绩查询查询某位学生的成绩(可以指定学号来进行查询)
六、主要教材(指导书)及参考用书教材《数据结构》实验指导书(自编)参考书
[1]《数据结构(C#语言版)》,雷军环编著,清华大学出版社,2009年2月出版
[2]《数据结构实践指导教程(C语言版)》,阮宏一主编,华中理工大学出版社,2004年9月出版
[3]《数据结构题集(C语言版)》,严蔚敏、吴伟民、米宁编著,清华大学出版社,1999年2月出版
七、考核与成绩评定
1.实验成绩评定方法实验预习占10%;实验态度占10%;实验报告占30%,实验考核50%o
2.实验成绩最终以20%的比例计入该门课程的总评成绩中
八、其他说明
九、编制与审核编制人审核人年月日。