数据结构——线性表(1)

这篇博客介绍了线性表的基本概念,包括其定义、特性,并阐述了线性表的抽象数据类型表示,详细列出了如初始化、查找、插入、删除等基本操作。

1. 线性表的基本概念

  • 定义:具有相同数据类型的 n ( n ≥ 0 ) n(n\geq0) n(n0) 个数据元素的有限序列,其中 n n n 为表长,当 n = 0 n=0 n=0时线性表为空表。一般表示为:

L = ( a 1 , a 2 , a 3 , . . . , a i , a i + 1 , . . . , a n ) L=(a_1, a_2, a_3,...,a_i,a_{i+1},...,a_n) L=(a1,a2,a3,...,ai,ai+1,...,an)

   a 1 a_1 a1 为表头元素, a n a_n an为表尾元素。除表头元素外,所有元素都有且仅有一个直接前驱;除表尾元素外,所有元素都有且仅有一个直接后继。

  • 特性
    • 表中元素个数有限。
    • 表中元素在逻辑上表现出一定的顺序性,有先后次序。
    • 表中元素数据类型相同,每个元素占有相同大小的存储空间。
    • 表中元素具有抽象性,不考虑元素具体表示的内容。

线性表是一种逻辑结构,表示元素之间是一对一的相邻关系。而顺序表和链表是指存储结构。


2. 线性表的抽象数据类型表示

ADT 线性表 {
  数据对象:D = < a 1 , a 2 , . . . , a n a_1, a_2, ..., a_n a1,a2,...,an>
  数据关系:S = <数据元素是一对一的关系,除表头元素外,都有直接前驱,除表尾元素外,都有直接后继。>
  基本操作:
    InitList(*L); 初始化线性表。
    ClearList(*L); 清空线性表。
    ListEmpty(L); 线性表判空操作。
    GetElem(L, i, *e); 将线性表中第 i 个位置的元素值返回给 e 。
    LocateElem(L, e); 查找线性表中与给定 e 相等的元素。
    ListInsert(*L, i, e); 在线性表第 i 个位置插入新元素 e。
    ListDelete(*L, i, *e); 删除线性表第 i 个位置的元素并返回给 e。
    ListLength(L); 返回线性表的长度。
    …
}

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值