实习任务与要求

时间:2022-03-29 19:15:43 阅读: 最新文章 文档下载
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。
实习任务

实习一 【实习题目】 线性表的基本运算。 【实习目的】

1 深入理解线性表的逻辑特性,掌握线性表的顺序存储、连接存储表示方法。 2 熟练掌握线性表的各种基本运算。 【实习内容】

1 分别在顺序表类和单向链表类中增加成员函数void Reverse(),实现线性表的

逆置运算。

2 分别在顺序表类和单向链表类中增加成员函数bool DeleteX(const T &x)删除

表中所有元素值等于x的元素。若存在这样的元素,则删除之,且函数返回true否则函数返回false

3 编写主函数,调用上述新增函数。

实习二 【实习题目】 中缀表达式求值。 【实习目的】

1 深入理解栈的逻辑特性,掌握栈的基本操作。 2 学习使用栈处理应用问题的方法。 【实习内容】

1 定义一个Calculator类,主函数调用该类,实现对中缀表达式求值。假定操作数

为无符号整数,运算符仅限于加+-*整除/乘方^5种运算。

2 要求使用两个栈:运算符栈和操作数栈。程序从键盘读入字符串形式的中缀表

达式,借助两个栈,经过一遍处理,直接在屏幕上输出表达式的值。 实习三 【实习题目】 二叉树的基本操作。 【实习目的】


1 掌握二叉链表上实现二叉树基本运算的方法。

2 学会设计基于遍历的求解二叉树应用问题的递归算法。 【实习内容】

1 设计递归算法,实现下列运算:删除一棵二叉树,求二叉树的高度,求叶子结

点数,复制一棵二叉树,交换每个分支结点的左右子树。

2 设计对二叉树进行层次遍历的算法。 3 编写主函数,验证上述算法。 实习四 【实习题目】

1 图的基本运算。

2 飞机换乘次数最少问题。 【实习目的】

1 掌握图的基本运算。

2 学会使用图算法解决应用问题的方法。 【实习内容】

1 验证课堂上所学有关图的所有算法。

2 在邻接矩阵上实现图的深度遍历和广度遍历。

3 设有n个城市,编号为0~n-1m条航线的起点和终点从文本文件中读取。当

用户从键盘输入始发城市和目的地城市编号后,要求程序能够在屏幕上显示一个换乘次数最少的乘机方案。

这个文本文件共有m+2行:第1行是一个整数,代表n; 2行也是个整数,代表m;后面的m行,每行两个整数,用空格分隔,代表航线的起点城市编号和终点城市编号。

显示在屏幕上的换乘次数最少的乘机方案是一个用逗号分隔的整数序列:最左边的整数代表始发城市编号;最右边的整数代表目的地城市编号;中间的整数序列代表中转城市编号。 实习五 【实习题目】

各种内排序算法的实现及性能比较。 【实习目的】

1 理解和掌握各种内排序算法。

2 学会测试内排序算法性能的方法。 【实习内容】


1 验证课堂上所学有关内排序的所有算法。

2 在每个内排序算法的适当位置插入计数语句,分别统计排序过程中元素间的比

较次数和元素的移动次数。

3 设待排序的数据是一个整数序列,从文本文件中读取,该文件每行只有一个整

数。

实习报告内容与要求 每个实习结束后,都要写一份实习报告。实习报告内容包括:1、问题描述;2、解题思路(如:数据结构的选择,函数的功能以及调用关系描述等);3、测试用例和运行结果;4、源程序。

除源程序以外,实习报告内容要求用A4纸打印5号宋体字)源程序不需要打印,只提供电子版(源程序文件用自己的学号+姓名+实习题号命名)。

20周交实习报告。5份实习报告装订在一起,配上学院统一印制的实习报告封面。

实习时间与地点

时间:15周至18周,周二3:45~17:25,周五8:00~9:35

地点:周二在4-5机房(3个班);周五在3-2机房(1班)、3-3机房(2班)、3-4机房(3班)。




本文来源:https://www.wddqw.com/doc/b437b04b87c24028905fc321.html