《數据结构》实验指导书.docVIP

  • 15
  • 0
  • 约5.4千字
  • 约 25页
  • 2016-12-07 发布于重庆
  • 举报
《數据结构》实验指导书

《数据结构》 实验指导书 肇庆学院 计算机学院/软件学院 编 前 言 数据结构是信息与计算科学专业中一门重要的专业基础课程。当用计算机来解决实际问题时,就要涉及到数据的表示及数据的处理,而数据表示及数据处理正是数据结构课程的主要研究对象,通过这两方面内容的学习,为后续课程,特别是软件方面的课程打下了厚实的知识基础,同时也提供了必要的技能训练。因此,数据结构课程在计算机应用专业中具有举足轻重的作用。 本书是《数据结构》的上机实验指导书,内容包括线性表、栈和队列、串、数组和稀疏矩阵、递归、树状结构、图、查找、排序等。书后附录中给出了学生应提交的实验报告的格式。上机实验指导书指导书容都是基于C语言的,因此,要求学生对C语言要有一定的了解。建议使用Turbo C 2.0或VC++作为实验平台。根据学生的实际情况,本上机实验指导书的内容大多数为基本算法的综合验证,也包括部分算法设计。本上机实验指导书共有9个实验内容,每个实验约为4课时。 由于作者对《数据结构》知识所知有限,书中难免存在错误,恳请读者及时加以指正,以便改进。如有对于本书的意见和建议,请与编者联系,E-mail:lg@zqu.edu.cn。衷心感 目录 前 言 实验一 顺序表 1 实验二 单链表 3 实验三 栈和队列 5 实验四 串 7 实验五 数组 8 实验六 树和二叉树 10 实验七 图 12 实验八 查找 14 实验九 排序 16 参考资料 18 附录1:肇庆学院计算机系实验报告格式 19 附录2:上机实习注意事项 21 1. 顺序表的存储结构形式及其描述 2. 顺序表的建立、查找、插入和删除操作 二、实验目的 1. 掌握顺序表的存储结构形式及其描述 2. 掌握顺序表的建立、查找、1. 编写函数,输入一组整型元素序列,建立一个顺序表。 2. 编写函数,实现对该顺序表的遍历。 3. 编写函数,在顺序表中进行顺序查找某一元素,查找成功则返回其存储位置i,否则返回错误信息。 4. 编写函数,实现在顺序表的第i个位置上插入一个元素x的算法。 5. 编写函数,实现删除顺序表中第i个元素的算法。 6. 编写利用有序表插入算法建立一个有序表的函数。 7. 编写函数,利用以上算法,建立两个非递减有序表,并把它们合并成一个非递减有序表。 8. 编写函数,实现输入一个元素x,把它插入到有序表中,使顺序表依然有序。 9. 编写一个主函数在主函数中设计一个简单的菜单1.顺序表的存储定义 #define MAXSIZE 100 //顺序表的最大元素个数 typedef int ElemType;//顺序表的元素类型 typedef struct list {ElemType elem[MAXSIZE];//静态线性表 int length; //顺序表的实际长度 } SqList;//顺序表的1. 插入、删除时元素的移动原因、方向及先后顺序。 2. 理解不同 实验二 单链表 一、预备知识 1. 动态链表的存储结构形式及其描述 2. 单链建、查找、1. 掌握单链表的存储结构形式及其描述 2. 掌握单建、查找、1. 编写函数,实现随机产生或键盘输入一组元素,建立一个带头结点的单链表(无序)。 2. 编写函数,实现遍历单链表。 3. 编写函数,实现把单向链表中元素逆置(不允许申请新的结点空间)。 4. 编写函数,建立一个非递减有序单链表。 5. 编写函数,利用以上算法,建立两个非递减有序单链表,然后合并成一个非递减链表。 6. 编写函数,在非递减有序单链表中插入一个元素使链表仍然有序。 7. 编写函数,实现在非递减有序链表中删除值为x的结点。 8. 编写一个主函数,在主函数中设计一个简单的菜单,分 1. 单链表的类型定义 #include stdio.h typedef int ElemType;//单链表结点类型 typedef struct LNode {ElemType data; struct LNode *next; } LNode,*LinkList; 2. 为了算法实现简单,最好采用带头结点 五、注意问题 1. 重点理解链式存储的特点及指针的含义。 2. 注意比较顺序存储与链式存储的各自特点。 3. 注意比较带头结点、无头结点链表实现插入、删除算法时的区别。 4. 单向链表的操 实验三 栈和队列 一、预备知识 1.栈的类型定义方法基本算法队列的类型定义方法基本算法 实验四 串 一、预备知识 1.字符串的基本概念 2.字符串的模式匹配算法 实现的匹配算法从键盘输入主串和子串元素,调用串的模式匹配算法,判断子串是否在主串中,若在,返回起始位

文档评论(0)

1亿VIP精品文档

相关文档