在数据结构里最简单的是线性表,第一表项是表头,最后一项是表尾,线性表是一个有限序列
linearList.h
linearList.h
#ifndef LINEARLIST_H
#define LINEARLIST_H
template<typename T>
class LinearList{
public:
virtual int Size()const=0;//表的分配的size(maxSize)
virtual int Length()const=0;//表的长度,有值的元素个数
virtual int Search(T& x)const=0;//返回x的index
virtual int Locate(int i)const=0;//定位第i个表项,如果有返回i,貌似有点怪,但在链表里可以返回第i个表项的指针
virtual bool getData(int i,T& x)const=0;
virtual void setData(int i,T& x)=0;
virtual bool Insert(int i,T& x)=0;//在第i个表项后插入x
virtual bool Remove(int i,T& x)=0;//删除第i个表项,通过x返回
virtual bool IsEmpty()const=0;
virtual bool IsFull()const=0;
virtual void Sort()=0;
virtual void input()=0;
virtual void output()=0;
};
#endif