知识大全 数据结构之线性表的逻辑结构[3]
Posted 结构
篇首语:最关情,折尽梅花,难寄相思。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 数据结构之线性表的逻辑结构[3]相关的知识,希望对你有一定的参考价值。
初始条件 线性表L存在
操作结果 在表L中查找值为x的数据元素 其结果返回在L中首次出现的值为x的那个元素的序号或地址 称为查找成功; 否则 在L中未找到值为x的数据元素 返回一特殊值表示查找失败
⑸ 插入操作 Insert_List(L i x)
初始条件 线性表L存在 插入位置正确 ( <=i<=n+ n为插入前的表长)
操作结果 在线性表L的第 i 个位置上插入一个值为 x 的新元素 这样使原序号为 i i+ n 的数据元素的序号变为 i+ i+ n+ 插入后表长=原表长+
⑹ 删除操作 Delete_List(L i)
初始条件 线性表L存在 <=i<=n
操作结果 在线性表L中删除序号为i的数据元素 删除后使序号为 i+ i+ n 的元素变为序号为 i i+ n 新表长=原表长
需要说明的是
某数据结构上的基本运算 不是它的全部运算 而是一些常用的基本的运算 而每一个基本运算在实现时也可能根据不同的存储结构派生出一系列相关的运算来 比如线性表的查找在链式存储结构中还会有按序号查找; 再如插入运算 也可能是将新元素x插入到适当位置上等等 不可能也没有必要全部定义出它的运算集 读者掌握了某一数据结构上的基本运算后 其它的运算可以通过基本运算来实现 也可以直接去实现
在上面各操作中定义的线性表L仅仅是一个抽象在逻辑结构层次的线性表 尚未涉及到它的存储结构 因此每个操作在逻辑结构层次上尚不能用具体的某种程序语言写出具体的算法 而算法的实现只有在存储结构确立之后
cha138/Article/program/sjjg/201311/23934相关参考
线性表的定义 线性表是一种线性结构线性结构的特点是数据元素之间是一种线性关系数据元素一个接一个的排列在一个线性表中数据元素的类型是相同的或者说线性表是由同一类型的数据元素构成的线性结构在实际问题
线性结构的特点 存在唯一的一个被称做第一个的数据元素 存在唯一的一个被称做最后一个的数据元素 除第一个之外集合中的每个数据元素均只有一个前驱 除最后一个之外集合中每个数据元素均只有一个后继线性表的定义
顺序表的存贮特点是利用物理上的相邻关系表达出逻辑上的前驱和后继关系它要求用连续的存储单元顺序存储线性表中各元素因此对顺序表进行插入和删除时需要通过移动数据元素来实现线性表的逻辑上的相邻关系从而影响
线性结构是最简单且最常用的数据结构线性表是一种典型的线性结构 线性表的逻辑定义 线性表(LinearList)是由n(n≥)个数据元素(结点)aa…an组成的有限序列 ①数据元素的个数n定义
线性结构是最简单且最常用的数据结构线性表是一种典型的线性结构 线性表的逻辑定义 线性表(LinearList)是由n(n≥)个数据元素(结点)aa…an组成的有限序列 ①数据元素的个数n定义
作为线性表的一种存储结构我们关心的是结点间的逻辑结构(线性关系)而对每个结点的实际地址并不关心所以通常的单链表用图的形式表示 > >
线性结构是最简单且最常用的数据结构线性表是一种典型的线性结构线性表的逻辑定义 线性表(LinearList)是由n(n≥)个数据元素(结点)aa…an组成的有限序列 ①数据元素的个数n定义为表的长
链表的每个元素构成一个结点结点定义如下 Typedefstructnode DataTypedata;/*每个元素数据信息*/ structnode*next;/*存放后继元素的地址*/
根据C语言中函数参数的传递采用值传送的规则有时定义一个指向SeqList类型的指针更为方便能够实现信息的回送因此我们定义一个指针类型 typedefSeqList*PSeqList; PSeq
顺序表的删除 线性表的删除运算是指将表的第i(≤i≤n)个位置上的结点删除使长度为n的线性表(a…aiai…an)变成长度为n的线性表(a…aiai+…an) 删除操作分为相应两个阶段只是顺序与前