首页 > 代码库 > 数据结构------------线性表

数据结构------------线性表

集合结构-----不考虑数据间的关系,各个数据元素是“平等”的

线性结构-----一对一对应关系 即 除了首元素没有前驱外,其他数据元素都有唯一的前驱和后继

树状结构-----一个对应多个 即 除了树根元素,其他数据元素都有唯一的前驱

图状结构-----多对应多个 即 一个元素可能有多个前驱和后继

 

1、线性表是由 类型相同的数据元素 组成的有限序列

2、线性表的基本操作

<1>int Length() const

       初始条件:线性表已存在

       操作结果:返回线性表元素个数

<2>bool Empty() const

       初始条件:线性表已存在

       操作结果:如果线性表为空,返回true,否则返回false

<3>void Clear() 

       初始条件:线性表已存在

       操作结果:清空线性表·

<4>void Traverse(void (* Visit)(ElemType&))

       初始条件:线性表已存在

       操作结果:依次对线性表的每个元素调用函数(* Visit).

<5>StatusCode SetElem(int position,const ElemType &e)

       初始条件:线性表已存在,1<=position<=Length()

       操作结果:将线性表第position个位置的元素赋值为e

<6>StatusCode Delete(int position, ElemType &e)

       初始条件:线性表已存在,1<=position<=Length()

       操作结果:删除线性表第position个位置的元素,并用e返回其值(把值赋给e),长度减一

<7>StatusCode Insert((int position, const ElemType &e)

       初始条件:线性表已存在,1<=position<=Length()

       操作结果:在线性表的第position个位置前插入元素e,长度+1

<8>StatusCode GetElem(int position, ElemType &e) const

       初始条件:线性表已存在,1<=position<=Length()

       操作结果:用e返回线性表第position个元素

/////ElemType  元素类型///

3、线性表的实现有两种方法------顺序表和链表

 

数据结构------------线性表