十一期间没事,继续复习数据结构:
线性表(或称为顺序表)。优点:查找方便,缺点:占用空间。
结构如下:
Class LinearList
{
public:
//一些函数
private:
int maxSize;//最大容量
int length;//当前长度
int* element;//存放元素的数组
}
很简单的一种数据结构,常用的函数有查找删除插入,代码如下(随便一写):
1.从指定位置取数据
bool LinearList::Find(int pos,int &x)
{
if(pos>length||pos<1)
return false;
x = element[pos-1];
return true;
}
2.在线性表中查找指定元素
int LinearList::Search(int x){
int i=0;
while(i<length){
if(x==element[i])
return ++i;
i++;
}
return -1;
}
3.删除指定位置元素
LinearList* LinearList::Delete(int pos,int &x)
{
if(Find(pos,x))
{
for(int i=pos-1;i<length,i++)
element[i]=element[i+1];
length--;
return *this;
}
else
// throw somgthing;
}
4.向指定位置插入元素x
LinearList* LinearList::Insert(int pos,int x)
{
if(pos>length||pos<0)
//throw something;
if(length>=MaxSize)
//throw something;
for(int i=length;i>=pos;i--)
{
element[i]=element[i-1];
}
element[pos]=x;
length++;
return *this;
}