数据结构导论-2.线性表的基本概念

一、线性结构

是n(n≥0)个数据元素(也称结点)的有穷序列

线性结构的基本特征

若至少含有一个结点,则除起始结点没有直接前趋外,其他结点有且仅有一个直接前趋;

除终端节点没有直接后继外,其他结点有且仅有一个直接后继。

 

二、线性表的定义

线性表是由同一类型的数据元素构成的线性结构。是n(n≥0)个结点的有穷序列。

结点个数n称为表长

n=0时,称为空表,记为()或 φ。

n>0时,表示成:(a1,a2,…an)。

其中:a1称为起始结点;an称为终端结点;对任意一对相邻结点ai和ai+1,将 ai 称为 ai+1 的直接前趋,ai+1 称为 ai 的直接后继

对于ai,当 i=2,...,n 时,有且仅有一个直接前趋ai-1,当i=1,2,...,n-1 时,有且仅有一个直接后继ai+1,而 a1是表中第一个元素,它没有前趋,an是最后一个元素无后继。

需要说明的是:ai为序号为i的数据元素(i=1,2,…,n),通常我们将它的数据类型抽象为datatype,datatype根据具体问题而定。

如在学生情况信息表中,它是用户自定义的学生类型; 在字符串中,它是字符型;等等。

 

三、线性表的基本运算

初始化Initiate(L):建立一个空表L=(),L不含数据元素。

求表长Length(L):返回线性表L的长度。

读表元素Get(L,i):返回线性表L的第i个数据元素,当i不满足1≤i≤Length(L)时,返回一特殊值。

定位(按值查找)Locate(L,x):查找线性表中数据元素等于x的结点序号,返回找到的结点集合中序号的最小值,否则返回值为0(说明没有找到)。

插入Insert(L,x,i):在线性表L的第i个位置上增加一个值为x的新结点(整个表长+1),参数i的合法取值范围是1≤i≤n+1。

删除Delete(L,i):删除线性表L的第i个位置结点(整个表长-1),参数i的合法取值范围是1≤i≤n。

注意:不同的存储结构基本运算的实现细节是不同的。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值