C++版数据结构第二章线性表总结

一、线性表的逻辑结构

1 线性表的定义

1线性表:简称表,是nn0)个具有相同类型的数据元素的有限序列。

2线性表的长度:线性表中数据元素的个数。

3空表:长度等于零的线性表,记为:L=(  )

4非空表记为:L=(a1,a2 , …,ai-1, ai ,…, an)。其中,ai1in)称为数据元素;下角标i表示该元素在线性表中的位置或序号。

2线性表的特性

1. 有限性:线性表中数据元素的个数是有穷的。

2. 相同性:线性表中数据元素的类型是同一的。

3. 顺序性:线性表中相邻的数据元素ai-1ai之间存在序偶关系(ai-1,ai),即ai-1ai的前驱,aiai-1的后继;a1无前驱,an无后继,其它每个元素有且仅有一个前驱和一个后继。

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

抽象数据类型定义为:

ADT List

Data

线性表中的数据元素具有相同类型,相邻元素具有前驱和后继关系

Operation

InitList

    前置条件:表不存在

    输入:无

    功能:表的初始化

    输出:无

    后置条件:建一个空表

DestroyList

    前置条件:表已存在

    输入:无

    功能:销毁表

    输出:无

    后置条件:释放表所占用的存储空间

Length

    前置条件:表已存在

     输入:无

     功能:求表的长度

     输出:表中数据元素的个数                                             

     后置条件:表不变

Get

    前置条件:表已存在

    输入:元素的序号i

    功能:在表中取序号为i的数据元素

    输出:若i合法,返回序号为i的元素值,否则抛出异常

    后置条件:表不变

Locate

    前置条件:表已存在

    输入:数据元素x

    功能:在线性表中查找值等于x的元素

    输出:若查找成功,返回x在表中的序号,否则返回0

    后置条件:表不变

Insert

      前置条件:表已存在

      输入:插入i;待插x

      功能:在表的第i个位置处插入一个新元素x

      输出:若插入不成功,抛出异常

    后置条件:若插入成功,表中增加一个新元素

Delete

      前置条件:表已存在

      输入:删除位置i

      功能:删除表中的第i个元素

    输出:若删除成功,返回被删元素,否则抛出异常

    后置条件:若删除成功,表中减少一个元素

Empty

    前置条件:表已存在

    输入:无

    功能:判断表是否为空

    输出:若是空表,返回1,否则返回0

后置条件:表不变

PrintList

    前置条件:表已存在

    输入:无

功能:遍历操作,按序号依次输出线性表中的元素

输出:线性表的各个数据元素

后置条件:线性表不变

endADT

说明:

线性表的基本操作根据实际应用是而定;

复杂的操作可以通过基本操作的组合来实现;

对不同的应用,操作的接口可能不同。

三、

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值