数据结构和算法之一——线性表_1_概念

  1. 线性表相关概念
    1.1 定义:线性表( List ):由零个或多个数据元素组成的有限序列。
    1.2 注意:
    1)线性表是一个序列,也就是说元素之间是有个先来后到的,像刚才的小蝌蚪就没有顺序。
    2)若元素存在多个,则第一个元素无前驱,而最后一个元素无后继,其他元素都有且只有一个前驱和后继。
    3)线性表强调是有限的。
    1.3 如果用数学语言来进行定义,可:若将线性表记为( a1,...,ai-1,ai,ai+1,...an ) , 则表中 ai-1 领先于 ai,ai 领先于 ai+1, 称 ai-1 是 ai的直接前驱元素 ,ai+1 是 ai 的直接后继元素。

  2. 抽象数据类型
    抽象数据类型的标准格式:

ADT 抽象数据类型名
Data
数据元素之间逻辑关系的定义
Operation
操作
endADT

  1. 线性表的抽象数据类型
    3.1 我们给大家总结下线性表的抽象数据类型定义:
    ADT 线性表( List )
    Data
    线性表的数据对象集合为 {a1,a2,...,an} ,每个元素的类型均为 DataType 。其中,除第一个元素 a1 外,每一个元素有且只有一个直接前驱元素,除了最后一个元素 an 外,每一个元素有且只有一个直接后继元素。数据元素之间的关系是一对一的关系。

Operation
InitList(L): 初始化操作,建立一个空的线性表 L 。
ListEmpty(L): 判断线性表是否为空表,若线性表为空,返回 true ,否则返回 false。
ClearList(
L): 将线性表清空。
GetElem(L,i,e): 将线性表 L 中的第 i 个位置元素值返回给e。
LocateElem(L,e): 在线性表 L 中查找与给定值 e 相等的元素,如果查找成功,返回该元素在表中序号表示成功;否则,返回 0 表示失败。
ListInsert(
L,i,e): 在线性表 L 中第 i 个位置插入新元素 e。
ListDelete(L,i,e): 删除线性表 L 中第 i 个位置元素,并用 e 返回其值。
ListLength(L): 返回线性表 L 的元素个数。
endADT

你可能感兴趣的:(数据结构和算法之一——线性表_1_概念)