标准数据结构实验课程列表

更新时间:2023-05-30 00:52:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

标准数据结构实验课程列表

实验一 线性表的顺序存储实验

一、实验目的

1、掌握用Visual C++6.0上机调试顺序表的基本方法

2、掌握顺序表的基本操作,插入、删除、查找等算法的实现

二、实验内容

1、顺序表基本操作的实现

[问题描述] 当我们要在顺序表的第i个位置上插入一个元素时,必须先将顺序表中第i个元素之后的所有元素依次后移一个位置,以便腾空一个位置,再把新元素插入到该位置。若是欲删除第i个元素时,也必须把第i个元素之后的所有元素前移一个位置。

[基本要求] 要求生成顺序表时,可以键盘上读取元素,用顺序存储结构实现存储。

实验二 单链表实验

一、实验目的

1、掌握用Visual C++6.0上机调试单链表的基本方法

2、掌握单链表的插入、删除、查找、求表长以及有序单链表的合并算法的实现

二、实现内容

1、单链表基本操作的实现

[问题描述]要在带头结点的单链表h中第i个数据元素之前插入一个数据元素x ,首先需要在单链表中寻找到第i-1个结点并用指针p指示,然后申请一个由指针s 指示的结点空间,并置x为其数据域值,最后修改第i-1个结点,并使x结点的指针指向第i个结点,要在带头结点的单链表h中删除第i个结点,首先要计数寻找到第i个结点并使指针p指向其前驱第i-1个结点,然后删除第i个结点并释放被删除结点空间。

[基本要求]用链式存储结构实现存储

[实现提示]链式存储结构不是随机存储结构,即不能直接取到单链表中某个结点,而要从单链表的头结点开始一个一个地计数寻找。

2、求表长以及有序单链表的合并算法的实现

[问题描述] 假设有两个按元素值递增次序排列的线性表,均以单链表形式存储。请编写算法将这两个单链表归并为一个按元素值递减次序排列的单链表,并计算表长。要求利用原来两个单链表的结点存放归并后的单链表。

[基本要求]用链式存储结构实现存储

实验三 栈的实现及应用

一、实验目的

1、掌握顺序栈的类型定义方法。

2、掌握在顺序栈上实现的六种基本算法。

2、掌握顺序栈的简单应用。

二、实验内容

1、利用顺序栈将一个非负的十进制整数N转换为对应的B进制数。

[基本要求]非负的十进制整数N和B都从键盘输入;转换结果从屏幕输出。

标准数据结构实验课程列表

实验四 队列的实现及应用

一、实验目的

1、掌握队列的类型定义方法。

2、理解和掌握循环队列解决假溢出的方法。

二、实验内容

1、利用循环队列模拟舞伴配对问题:在舞会上,男、女各自排成一队。舞会开始时。依次从男队和女队的队头各出一人配成舞伴。如果两队初始人数不等,则较长的那一队中未配对者等待下一轮舞曲。

2、假设初始男、女人数及性别已经固定,舞会的轮数从键盘输入。

试模拟解决上述舞伴配对问题。

3、要求:从屏幕输出每一轮舞伴配对名单,如果在该轮有未配对的,能够从屏幕显示下一轮第一个出场的未配对者的姓名。

实验五 树的基本操作

一、实验目的

1、进一步掌握指针变量、动态变量的含义。

2、掌握二叉树的结构特性,以及各种存储结构的特点和适用范围。

3、掌握用指针类型描述、访问和处理二叉树的运算。

二、实验内容

1、以二叉链表作存储结构,试编写前序、中序、后序遍历二叉树的算法。

2、赫夫曼树的算法

实验六 图的基本操作

一、实验目的

1、掌握图的存储方式

2、 掌握图的相关操作

二、实验内容

1、建立图的邻接矩阵存储方法,并实现图的深度优先非递归遍历算法。

实验七 查找(附加选作)

一、实验目的

1、掌握查找的不同方法,并能用高级语言实现查找算法。

2、熟练掌握顺序表的查找方法和有序顺序表的折半查找算法以及静态查找树的构造方法和查找算法。

3、掌握二叉排序树的生成、插入、删除、输出运算。

二、实验内容

1、有序顺序表的二分查找的递归算法

标准数据结构实验课程列表

实验八 排序(附加选作)

一、实验目的

1、掌握排序的不同方法,并能用高级语言实现排序算法

二、实验内容

1、实现各种主要的排序算法

本文来源:https://www.bwwdw.com/article/x074.html

Top