班级:___计算机13-2__ 学号:____**********_________ 姓名:___ 陈志盛____ 成绩:_________
实验一顺序表操作验证
1. 实验目的
⑴掌握线性表的顺序存储结构;
⑵验证顺序表及其基本操作的实现;
⑶掌握数据结构及算法的程序实现的基本方法。
2. 实验内容
⑴建立含有若干个元素的顺序表;
⑵对已建立的顺序表实现插入、删除、查找等基本操作。
实验用到的理论知识,实现理论与实践相结合。总结尽量简明扼要,并与本次实验密切相关。
算法设计
对本次实验内容设计c++类定义,设计算法完成每个成员函数。
编码
将算法转化为c++程序,设计主函数完成对各成员函数的调用。
#include<iostream>
using namespace std;
const int MaxSize=100;
template <class T>
class SeqList
{
public:
SeqList(){length=0;}
SeqList(T a[],int n);
~SeqList(){}
int Length(){return length;}
T Get(int i);
int Locate(T x);
void Insert(int i,T x);
T Delete(int i);
void PrintList();
private:
T data[MaxSize];
int length;
};
//顺序表有参构造函数SeqList===============================================
template<class T>
SeqList<T>::SeqList(T a[],int n)
{
if(n>MaxSize)throw"参数非法";
for(int i=0;i<n;i++)
data[i]=a[i];
length=n;
};
//顺序表安位查找算法Get====================================================
template<class T>
T SeqList<T>::Get(int i)
{
if(i<1||i>length)throw"查找位置非法";
else return data[i-1];
};
//顺序表按值查找算法Locate==================================================
template<class T>
int SeqList<T>::Locate(T x)
{
for(int i=0;i<length;i++)
if(data[i]==x)return i+1;
return 0;
};
//顺序表插入算法Insert=======================================================
template<class T>
void SeqList<T>::Insert(int i,T x)
{
if(length>=MaxSize)th
实验一顺序表验证实验 来自淘豆网m.daumloan.com转载请标明出处.