int main()
{
SeqList<int> test(15);
int array[15]={2,5,8,1,9,9,7,6,4,3,2,9,7,7,9};
for(int i=0;i<15;i++){
test.Insert(array[i],0);
}
test.Insert(1,0);
cout<<(test.Find(0)?"can‘t be found ":"Be found ")<< 0 << endl<<endl;
test.Remove(7);
test.Print();
test.Remove(9);
test.Print();
test.Remove(0);
test.Print();
return 0;
}
#ifndef SEQLIST_H_INCLUDED
#define SEQLIST_H_INCLUDED
#include<iostream>
using namespace std;
const int DefaultSize=100;
template <class elemType>
class SeqList{
public:
SeqList(int sz=DefaultSize)
:m_nmaxsize(sz),m_ncurrentsize(-1){
if(sz>0){
m_elements=new elemType[m_nmaxsize];
}
}
~SeqList()
{
delete[] m_elements;
}
int Length() const
{ //get the length
return m_ncurrentsize+1;
}
int Find(elemType x) const; //find the position of x
int IsElement(elemType x) const; //is it in the list
int Insert(elemType x,int i); //insert data
int Remove(elemType x); //delete data
int IsEmpty()
{
return m_ncurrentsize==-1;
}
int IsFull()
{
return m_ncurrentsize==m_nmaxsize-1;
}
elemType Get(int i)
{ //get the ith data
return i<0||i>m_ncurrentsize?(cout<<"can‘t find the element"<<endl,0):m_elements[i];
}
void Print();
private:
elemType *m_elements;
const int m_nmaxsize;
int m_ncurrentsize;
};
template <class elemType> int SeqList<elemType>::Find(elemType x) const{
for(int i=0;i<m_ncurrentsize;i++)
if(m_elements[i]==x)
return i;
cout<<"can‘t find the element you want to find"<<endl;
return -1;
}