顺序表实现(SeqList C++)

#include <stdlib.h> class SeqList { protected: DataType *list; int maxSize; int size; public: SeqList(int max=0); ~SeqList(); int Size()const; void Insert(const DataType& item,int i); DataType Delete(const int i); DataType GetData(int i)const; }; SeqList::SeqList(int max){ maxSize=max; size=0; list=new DataType[max]; } SeqList::~SeqList(){ delete []list; } int SeqList::Size()const{ return size; } void SeqList::Insert(const DataType& item,int i){ if(size==maxSize) { cout<<"顺序表已满,无法插入!"<<endl; exit(0); } if(i<0||i>size){ cout<<"参数i越界出错!"<<endl; exit(0); } for(int j=size;j>i;j--) list[j]=list[j-1]; list[i]=item; size++; } DataType SeqList::Delete(const int i){ if(size==0) { cout<<"顺序表已空,无法删除!"<<endl; exit(0); } if(i<0||i>size-1){ cout<<"参数i越界出错!"<<endl; exit(0); } DataType x=list[i]; for(int j=i;j<size-1;j++) list[j]=list[j+1]; size--; return x; } DataType SeqList::GetData(int i)const{ if(i<0||i>size-1){ cout<<"参数i越界出错!"<<endl; exit(0); } return list[i]; }

你可能感兴趣的:(顺序表实现(SeqList C++))