本书是配合计算机及相关专业“数据结构”课程而编写的。根据教学内容,并针对学生的实际情况,本教材在内容编排上共分三部分。第一部分为基础实验,给出了11个实验,包括线性结构、树型结构、图状结构、查找、排序,以及数组和字符串的操作。第二部分为综合实验,该部分实验的综合性比较强,可作为“数据结构”课程的课程设计,包括通用函数曲线作图程序、迷宫问题、全屏幕编辑程序设计、短信系统和保龄球记分系统等5个综合性实验。为了满足教学和各类学生学习与考前复习的需要,第三部分安排了10套模拟试题,并给出详细的解答。
本书内容丰富、概念清晰、实用性强,与“数据结构”课程的主要内容紧密结合,可供高职高专院校各专业学生学习、实验、课程设计和考前复习使用,也可供教师和其他专业技术人员参考。
第一部分 基础实验
实验1 线性表的基本操作
实验2 链表的基本操作
实验3 栈的基本操作
实验4 队列的基本操作
实验5 数组的基本操作
实验6 字符串的基本操作
实验7 二叉树的基本操作
实验8 树的遍历和HuHman树
实验9 图的基本操作
实验10 排序
实验11 查找
基础实验答案
第二部分 综合实验
实验1 通用函数曲线作图程序
实验2 迷宫问题
实验3 全屏幕编辑程序设计
实验4 短信促销活动
实验5 保龄球记分系统
第三部分 模拟试题
模拟试题1
模拟试题2
模拟试题3
模拟试题4
模拟试题5
模拟试题6
模拟试题7
模拟试题8
模拟试题9
模拟试题10
模拟试题参考答案
附录
附录A 实验报告参考规范
附录B BorlandC++上机基本操作
参考文献
数据结构课程是计算机专业中一门重要的专业基础课程。用计算机解决实际问题时,就要涉及数据的表示及数据的处理,而这正是数据结构课程的主要研究对象。通过这两方面内容的学习,为后续课程,特别是软件方面的课程打下了厚实的基础,同时也提供了必要的技能训练。因此,数据结构课程在计算机应用专业中具有举足轻重的作用。
要学好“数据结构”,仅仅通过课堂教学或自学获取理论知识是远远不够的,还必须加强实际动手训练。只有通过上机输入、编辑、检查、调试和运行已有的各种典型算法和已编写的程序,从成功和失败的经验中得到锻炼,才能熟练掌握和运用理论知识解决软件开发中的实际问题,达到学以致用的目的。
本书与《数据结构》一书配套使用,其目的是通过实践,进一步掌握常用数据结构的基本概念及其不同的实现方法,并对在不同存储结构上实现不同的运算方法和技巧有所体会。本教材主要是为学习“数据结构”课程而编写的实训教材。本书共分三部分,第一部分为基础实验,在内容安排上给出了11个实验,包括了线性结构(线性结构的定义、组织形式、结构特征和类型说明,以及在两种存储方式下实现的插入、删除和按值查找的算法,循环链表、双(循环)链表的结构特点和在其上的插入、删除等操作),树型结构(二叉树的二叉链表存储方式、结点结构和类型定义,二叉树的基本运算及应用),图状结构(图的两种存储结构的表示方法),查找(顺序查找、树表查找、散列表查找的基本思想及存储、运算的实现),排序(插入排序、冒泡排序、快速排序、直接选择排序、堆排序、归并排序和基数排序的基本思想及实现),以及数组和字符串的操作。第二部分为综合实验,这部分实验的综合性比较强,包括通用函数曲线作图程序、迷宫问题和全屏幕编辑程序设计等5个综合性实验,此部分可作为“数据结构”的课程设计。第三部分给出了10套模拟试题及其解答,目的是进一步巩固所学的理论知识。
本教材具有以下特点。
数据结构实验与实训教程
1.每个实验题目都给出相应的C程序模板,在模板中填写关键语句或子程序即可上机通过,便于集中精力在算法上。
2.实验内容多样性。习题包括基础题和提高题,以满足不同层次读者的需求。形式包括:给出程序框架要求填写关键算法,给出类似函数要求独立编写程序,给出主程序要求编写子程序,以及给出算法要求编写程序等。
3.标准的编程风格,逐步培养良好的编程习惯。
本教材中的所有程序都在BorlandC++软件开发环境下调试运行通过。本书由邓文华、戴大蒙和梅志红编写。其中第一部分、第二部分及附录由邓文华和戴大蒙老师编写,第三部分由梅志红老师编写;由浙江大学计算机学院孔繁胜教授审稿。本书的程序均由戴大蒙老师上机调试通过,全书由邓文华老师最后修改定稿。
由于作者水平有限,加之编写时间仓促,错误和不当之处在所难免,敬请读者批评指正。
编 者
2004年5月