下载此文档

数据结构实验报告(实验).pdf


文档分类:高等教育 | 页数:约19页 举报非法文档有奖
1/19
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/19 下载此文档
文档列表 文档介绍
: .
11 33 55
4
22 44 66 88
Sample Output
11 22 33 44 55 66 88
问题 D: 数据结构——实验 1——顺序表的循环移位
题目描述
顺序表的移位是循环移位,例如顺序表:1,2,3,4,5,6。如果左移 1 位,
即原来的头元素移动到末尾,其它元素向左移 1 位,变成 2,3,4,5,6,1。
同理,如果右移 1 位,即原来的尾元素移动到头,其它元素向右移 1 位,变
成 6,1,2,3,4,5。以下是移位的多个例子:
原数据:1,2,3,4,5,6
左移 3 位:4,5,6,1,2,3,与原数据对比
右移 4 位:3,4,5,6,1,2,与原数据对比
请编写程序实现顺序表的循环移位操作
.精品文档
输入
第一行输入 n 表示顺序表包含的·n 个数据
第二行输入 n 个数据,数据是小于 100 的正整数
第三行输入移动方向和移动的位数,左移方向为 0,右移方向为 1
第三行输入移动方向和移动的位数,左移方向为 0,右移方向为 1
输出
第一行输出创建后,顺序表内的所有数据,数据之间用空格隔开
第二行输出执行移位操作后,顺序表内的所有数据,数据之间用空格隔开
第三行输出执行移位操作后,顺序表内的所有数据,数据之间用空格隔开
如果发现输入的移动方向或位数不合法,不执行移位操作,输出 error
样例输入
5
11 22 33 44 55
0 2
1 4
样例输出
11 22 33 44 55
33 44 55 11 22
44 55 11 22 33
三、实验步骤与过程:
思路:

、插入、删除、查找等功能的实现

源代码:
A:
#include<iostream>
using namespace std;
class List
.精品文档
{
private:
int *elem; //数组元素
int listsize; //顺序表最大长度
int length; //顺序表当前长度
public:
List(int size); //构造函数
~List(); //析构函数
int ListLength(); //获取顺序表的实际长度
int ListInsert(int i,int e); //插入一个元素
int ListDelete(int i); //删除一个元素,返回删除的元素
int GetElem(int i); //获取一个元素,返回元素值
};
List::List(int size) //构造函数
{
listsize=size;
length=0;
elem=new int[listsize];
}
List::~List() //析构函数
{
delete[]elem; //回收空间
}
int List::ListLength() //获取顺序表的实际长度
{
return length;
}
int List::ListInsert(int i,int e) //插入一个元素
{
if (length==listsize)
return 0;//顺序表已满
if (i<1 || i>length+1)
return 0;//i 值不合法
if (i==length+1)
elem[length]=e;
else

数据结构实验报告(实验) 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息