线性表的本质和操作
生活中的智慧
1、现实生活中的幼儿园老师总会让小朋友以同样的排队次序出现。
线性表的表现形式
1、零个或者多个数据元素组成的集合;
2、数据元素在位置上是有序排列的;
3、数据元素的个数是有限的;
4、数据元素的类型必须相同。
线性表的抽象定义
线性表是具有**相同类型**的n(n>=0)个的数据元素的**有限序列**;
例如:1、2、3、4、5、6、7、8、9.......n.;这样的有限序列
线性表的性质
1、线性表的第一个元素,只有一个后继;
2、线性表的最后一个元素,只有一个前驱;
3、除了第一个元素和最后一个元素,其它的元素既有前驱,又有后继;
4、直接支持逐项访问和顺序存取。
线性表的一些常用操作
1、将元素插入线性表;
2、将元素从线性表中删除;
3、获取目标位置处的值;
4、获取线性表的长度;
5、设置目标位置处的长度;
6、清空线性表。
线性表在程序中表现为一种特殊的数据结构
template <typename T>
class List:public Object
{
public:
virtual bool insert(int i, const T& e) = 0;
virtual bool remove(int i) = 0;
virtual bool set(int i, const T& e) = 0;
virtual bool get(int i, T& e)const = 0;
virtual int length()const = 0;
virtual void clear() = 0;
小结
1、线性表是数据元素的有序并且有限的集合;
2、线性表中的数据元素必须是类型相同的;
3、线性表可用于描述排队关系的问题;
4、线性表在程序中表现为一种特殊的数据类型;
5、线性表在C++中表现为一个抽象类。