《数据结构与数据库操作系统》实验课作业和要求
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数据结构与数据库/操作系统》实验课作业和要求
实验一、线性表的应用:稀疏一元多项式运算器
实验目的:
✧熟练掌握指针和链表操作的基本功
✧熟练掌握数组操作的基本功
✧模块化程序设计(程序的分层结构、函数的功能和接口)
✧人机交互界面设计(界面美观,使用方便、操作的弹性好)
✧源程序的书写风格(缩进式,加注释,可读性要好)
✧对程序健壮性的处理
✧程序的调试技术训练(debug方法和测试数据的选择)
✧时空效率
实验学时:
12学时(第1,2,3次实验)
实验内容:
基本功能(必做):
1. 创建
2. 显示
3. 复制
4. 求和
5. 求差
6. 求值
7. 销毁
8. 清空
9. 修改(①插入新的结点、②删除已有结点、③修改已有结点的系数和指数)
拓展功能(选做):
10. 微分(N阶导数)
11. 不定积分
12. 定积分
13. 乘法和乘方
14. 除法
15. 最大公约式和最小公倍式
16. 多项式的四则运算(如“(1+2*3)/4”)
数据组织:
✧多项式用带头结点的单链表表示
✧用指针数组存放N个多项式的头指针
存储结构示意图:
用户操作界面:
推荐用菜单驱动
实验二、栈的应用
实验目的:
✧掌握栈的后进先出特点
✧掌握栈的表示和实现技术
✧掌握如何运用栈的特点来构建算法
实验内容
(在题目1~6中任选1题):
题目1. 简单的行编辑器(提高难度:实现对文本文件的编辑)题目2. 括号配对检验(提高难度:实现对括号优先级的检测)题目3. 波兰式计算(提高难度:操作数为浮点数)
题目4. 逆波兰式计算(提高难度:操作数为浮点数)
题目5. 中缀式计算(提高难度:操作数为浮点数)
题目6. 迷宫求解(提高难度: 随机迷宫、最短路径的提取)
附加题:
一般表达式的计算,即在表达式中包含其他函数的运算,如:
2.5^3*tan(sin(1.2)+cos(
3.5))
实验学时:4学时(第4次实验课当堂完成)
实验三、二叉树的运算
实验目的:
✧掌握二叉树的递归特性
✧掌握二叉树的常用存储结构----二叉链表
✧掌握二叉树的创建、遍历等基本运算
✧了解递归函数的执行过程,学会编写递归程序
实验内容:
(在题目1、2中任选1题)
题目1. 二叉树运算
1. 创建二叉树
2. 遍历二叉树(先序、中序、后序、层序遍历)
3. 二叉树的计算(二叉树的结点数、叶子数、高度、宽度等)
4. 二叉树的处理(复制、销毁)
题目2.哈夫曼编码和解码
1. 输入电文串
2. 统计电文字符集和每种字符在电文中出现的次数
3. 构建huffman树
4. 产生每种字符的huffman编码
5. 将电文串翻译成比特流
6. 对电文比特流进行解码
附加题:用huffman压缩技术实现对文件的压缩和解压缩处理实验学时:4学时(第5次实验课当堂完成)
实验四、图
实验目的:
✧掌握图的两种存储结构: 邻接矩阵表示法和邻接表表示法
✧掌握图的DFS遍历和BFS遍历的算法
✧学会利用图的模型来编程解决实际应用问题
实验内容:
(在题目1、2、3中任选1题)
题目1. 图的遍历
1. 创建图G(任选邻接矩阵或邻接表)
2. 显示图
3. 深度优先搜索遍历图
4. 广度优先搜索遍历图
5. 在图中插入顶点
6. 在图中插入边
题目2: 求通讯网的最小代价生成树
1. 输入通讯网G
2. 用Prim算法构建G的最小生成树并输出
3. 用Kruskal算法构建G的最小生成树并输出
题目3. 铁路交通网的最短路径
1. 输入铁路交通网G
2. 用Dijkstra算法计算从始发站到终点站的最短路径
实验学时:4学时(第6次实验课当堂完成)
实验五、哈希表
实验目的:
✧掌握哈希表的定义和特点
✧掌握哈希函数的构造方法和解决冲突的技术,实现哈希造表
✧掌握哈希表的查找、插入和删除技术
✧掌握哈希表平均查找长度ASL的计算方法
实验内容:
(1-5必做,其他选做)
1. 输入关键字序列;
2. 用除留余数法构建哈希函数,用线性探测法解决冲突,构建哈希表HT1;
3. 用除留余数法构建哈希函数,用拉链法解决冲突,构建哈希表HT2;
4. 分别对HT1和HT2计算在等概率情况下查找成功和查找失败的ASL;
5. 分别在HT1和HT2中查找给定的关键字,给出比较次数
6. 在HT1中删除指定的关键字
7. 在HT1中插入新的关键字
实验学时:
4学时(第7次实验课当堂完成)
实验六数据库SQL语言
实验目的:
1.熟悉本实验所使用的DBMS环境:SQL SERVER 2005, 学会使用SQL SERVER 客户端工具查询分析器。
2.完成SQL语言的基本操作:
1)创建表
2)插入、删除、修改、查询。
3)创建视图
实验内容:
1.下载SQL Server 客户端工具:http://19
2.168.50.203/querytool.rar,解压后执行isqlw.exe,【SQL SERVER(s)】输入192.168.50.211,【连接使用】选择“SQL server身份验证”,登录名和密码都是student。此外,也可以使用实验室机器桌面上的SQL Server Management Studio Express 登录。
登录后显示如下界面,则可以执行sql语句了。
要注意,pubs数据库是系统样例数据库,里面提供了titles等实验中用到的示例表,student用户对其只有查询权,不可以修改。学生可以在student数据库中创建自己的表,创建表时请按照题目中要求的命名规则来命名。
在操作数据库是要注意当前数据库是pubs还是student,可以在界面面的combox选择窗口中选择,也可以使用命令use pubs更改当前数据库。