线性表(一)

一、线性结构

         线性结构是最简单、最常用的一种数据结构。

         特点是:在数据元素的非空有限集合中,除第一个元素没有直接前驱、最后一个元素没有直接后继外,

                       集合中其余的每个数据元素均有唯一的直接前驱和唯一的直接后继。

二、线性表的概念

        线性表是由n(n>=0)个类型相同的数据元素组成的有限序列,记作(a1,a2,a3......an)。线性表中元素的个数n被定义为线性表的长度,n = 0时被称为空表。

        一个数据元素可由若干数据项组成,例如:在学籍表中,每个学生的信息由姓名、学号、性别等数据项组成。

        数据元素可以是原子类型,也可以是结构类型。

        相邻数据元素之间存在着序偶关系,即对于非空的线性表,表中ai-1领先于ai,称ai-1为ai的直接前驱,ai为ai-1的直接后继。

        当n>0时,除第一个数据元素没有直接前驱、最有一个元素没有直接后继外,其余的每个元素都有且仅有一个直接前驱和一个直接后继,数据元素之间具有一对一的关系。

            

        特点:

                    (1)同一性:线性表由同种数据类型的数据元素组成

                    (2)有穷性:线性表由有限个数据元素组成

                    (3)有序性:线性表中相邻元素之间存在着序偶关系

三、线性表的抽象数据类型定义

        (1)InitList(L)

                         将线性表L初始化为空表

        (2)ListLength(L)

                         如果线性表L为空表则返回0,否则返回线性表的长度

        (3)GetData(L,i)

                        返回线性表L中的第i个元素的值

        (4)InsList(L,i,e)

                        在线性表L中的第i个元素的位置插入新的数据元素e,L的长度加1

        (5)DelList(L,i,e)

                        删除线性表L中的第i个数据元素,并用e返回其值,L的长度减1

        (6)Locate(L,e)

                        如果线性表L中存在数据元素e,则将当前指针指向数据元素e所在位置并返回TRUE,否则返回FALSE

        (7)DestroyList(L)

                        将线性表L销毁

        (8)ClearList(L)

                        将线性表L置为空表

        (9)EmptyList(L)

                        如果线性表L为空表则返回TRUE,否则返回FALSE

猜你喜欢

转载自blog.csdn.net/m0_37671794/article/details/80387601