《算法与数据结构》上机题目

发布 2021-05-02 17:47:28 阅读 8353

实验一顺序表的操作及其应用。

实验目的。1)掌握线性表的顺序存储结构;

2)熟练掌握顺序表基本算法的实现;

3)掌握利用线性表数据结构解决实际问题的方法和基本技巧;

4)按照实验题目要求独立正确地完成实验内容。

实验环境。1) 硬件:每个学生需配备计算机一台,操作系统:windows2000/xp;

2) 软件:visual c++6.0;

实验学时。3学时。

实验内容。要求:数据元素类型elemtype 取整型int 或者char。顺序存储实现如下算法:

1)创建一顺序表;

2)输出该顺序表;

3)在顺序表中查找第i 个元素,并返回其值;

4)在顺序表中第i 个元素之前插入一已知元素;

5)在顺序表中删除第i 个元素;

实验二队列的操作及其应用。

实验目的。1) 掌握队列的基本定义;

2)掌握循环队列基本操作的实现;

3)掌握利用栈和循环队列进行回文字符串的判定。

实验环境。1) 硬件:每个学生需配备计算机一台,操作系统:windows2000/xp;

2) 软件:visual c++6.0;

实验学时。2学时。

实验内容。1、回文字符串的判定

要求:数据元素类型 elemtype 取字符型 char。实现如下算法:

1)创建一循环队列;

2)创建一个顺序栈;

3)利用栈和队列实现回文字符串的判定。

实验提示。1)在实验3的基础上(利用已完成的栈的类型定义和基本操作的实现)完成循环队列的存储结构定义(取名为sqqueue)。

2)完成循环队列的基本操作(参数可根据实际需要来确定)

初始化队列initqueue

销毁队列clearqueue

入队列enqueue

出队列dequeue

3) 利用栈和队列的特性,将输入的字符串分别进栈和队列,完毕后再依次出栈。

和出队,比较输出内容是否相等,若不相等则判别为非回文字符串,若栈空且队。

列空则是回文字符串。

4)如何实现接受用户从键盘输入的字符串?

cout<<"请输入一个字符序列,回车换行结束!"<

int h=strlen(str);

实验三查找算法。

一、实验目的

1) 掌握有序表、无序表查找的基本思想及存储、运算的实现。

2) 深刻理解各种算法的特点,并加以灵活应用。

3)加深对查找的理解,逐步培养解决实际问题的编程能力。

二、实验内容。

1)建立一个无序表并实现其上的顺序查找;

2)建立一个有序表并实现其上的折半查找(用递归和非递归两种算法实现);

三、实验结果。

数据结构与算法

本章知识要点 算法的基本概念 数据结构的定义 线性表的定义和存储 树 二叉树的定义和存储 查找与排序算法。算法 algorithm 是一组有穷的规则,规定了解决某一特定类型问题的一系列运算,是对解题方 与完整的描述。算法是解题的步骤,可以把算法定义成解一确定类问题的任意一种特殊的方法。在计算机科学中...

算法与数据结构

学院专业姓名学号。实验1 线性表的操作 12学时 问题描述 假设一个班级内有n个学生,定义一个学生类和一个班级类。学生类中包括学号 姓名 性别 年龄 专业等属性 班级类包括一个学生对象链表。定义如下 class student class myclass student stu head 链表表头指...

算法与数据结构

1 简述算法的概念及其五个重要特性。2 下图是用邻接表存储的图,请画出此图,写出其邻接矩阵以及从c点开始分别按广度优先搜索和深度优先搜索遍历该图的结果。给定一棵用二叉链表表示的二叉树,其根指针为root,编写求此二叉树叶结点个数的算法,要求先写出二叉链表的类型定义。2.编写简单选择排序的算法。1 用...