首页 > 其他分享 >9. 线性表概念

9. 线性表概念

时间:2023-05-09 18:44:13浏览次数:41  
标签:顺序 线性表 1.2 元素 概念 链接表 表中 代价

线性表

1.1 概念简介

线性表(简称表),是一种抽象的数学概念,是一组元素的序列的抽象,它由有穷个元素组成(0个或任意个)
顺序表:使用一大块连续的内存顺序存储表中的元素,这样实现的表称为顺序表,或称连续表
  在顺序表中,元素的关系使用顺序表的存储顺序自然地表示
链接表:在存储空间中将分散存储的元素链接起来,这种实现称为链接表,简称链表

1.2 顺序表

顺序表,开辟内存空间以后,首地址定死了

1.2.1 顺序表中的增加

分为3种情况
1. 头部增加,会引起后面所有数据的挪动(代价大)
2. 中间增加,会引起其后所有数据的挪动(代价大)
3. 尾部增加,(推荐的做法,代价几乎没有)

1.2.2 顺序表中的删除

分为3种情况
  1. 头部删,会引起后面所有数据的挪动(代价大)
  2. 中间删,会引起其后所有数据的挪动(代价大)
  3. 尾部删,(推荐的做法,代价几乎没有)

1.2.3 顺序表中的改动

所谓改动就是在这有序的队列中,修改了一个数字,并不会引起数据的挪动,只需要知道元素在哪里(通过索引可以非常快的找到),所有改动的代价是非常小的

1.2.4 顺序表中的查找

同改动一样,通过index可以很快的找到元素

1.3 链接表

image.png

所谓链接表就是,每一个元素都记录了指向上一个元素和下一个元素的地址信息,对于第一个元素和最后一个元素都打上了相应的标记(这些都是链接表自己来实现的)

链接表的增加

分为3种情况
 1. 头部增加,因为打上了Head标记,所以能很快的找到,只需要改一下指向地址(代价低,效率高)
 2. 中间增加,原来的2个元素之间改掉指向信息,建立新的指向信息(代价低,这里涉及到需要找到2个元素,这个过程相对顺序表来说会差一点点)
 3. 尾部增加,因为打上了Tail标记,所以能很快的找到,只需要改一下指向地址(代价低,效率高)

链接表的删除

分为3种情况:
    1. 头部删,只需要找到原来的Head标识就可以了,代价低
    2. 中间删,建立新的指向信息,代价低
    3. 尾部删,改动Tail标识,代价低

链接表的改

使用索引找到元素,相对顺序表来说差一点,代价低

链接表的查

使用索引找到元素,相对顺序表来说差一点,代价低

标签:顺序,线性表,1.2,元素,概念,链接表,表中,代价
From: https://www.cnblogs.com/yufc/p/17385952.html

相关文章

  • 强化学习的基本概念
    概率密度函数期望(expect)statesactionaagentpolicyΠ(a|s)rewardrstatetransitionp(s'|s,a)return(cumulativefuturereward未来累计回报)discountedreturn(γ折扣回报)Ut是未来获得的奖励总和,Ut是随机变量它依赖于所有未来的随机动作valuefunction(......
  • weblogic 相关概念
    计算机服务器部署https://blog.csdn.net/cunfu/article/details/117738439https://blog.csdn.net/suixinfeixiangfei/article/details/121595225?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_baidulandingword~default-4-121595225-blog-118541751.23......
  • MyBatis 概念与CRUD
    MyBatis一、概念与简介1.1框架概念ORMORM(ObjectRelationalMapping)对象关系映射,将程序中一个对象与表中的一行数据一一对应ORM映射框架,提供持久化类与表的映射关系,在运行时参照映射文件的信息,把对象持久化到数据库中。提供动态sql语句(set标签/sql片段/if标签/fo......
  • 深度学习基础概念
    模型假设和参数是什么?模型假设和参数是什么:用一个函数关系去表示的一只样本的数据的后面存在的规律。参数的是用于表现的规律的特征参数。评价函数(损失)是什么?评价函数(损失):是与评价预测与目标的之间的一种关系函数。衡量模型预测值和真实值差距的评价函数也被称为损失函数(损......
  • JS高级(作用域,原型链,闭包,节流,防抖等概念性)
    作用域局部作用域函数作用域在函数内部声明的变量只能在函数内部被访问,外部无法直接访问块作用域let和const声明的变量会产生块作用域,var不会产生块作用域,推荐使用let和const全局作用域在<script>和.js文件的最外层就是全局作用域,在此声明的变量在其他任何作用域都可以被......
  • (一) 计算机网络的基本概念
    目录参考重点导图计算机网络的组成计算机网络的分类总结参考重点虽然考研知识点但是也可以使用导图计算机网络的组成可以从不同方面来解释计算机网络的组成可以理解成先通过资源子网打包然后通过通信子网传输计算机网络的分类总结......
  • docker介绍、什么是虚拟化、docker是什么、容器与虚拟机比较、Docker 概念、docker安
    目录1docker介绍1.1什么是虚拟化2.1docker是什么2.2容器与虚拟机比较2.3Docker概念2docker安装1docker介绍1.1什么是虚拟化在计算机中,虚拟化(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破......
  • 【面向对象依赖关系概念总结】面向对象程序设计的五种依赖关系
    ​目录 简介继承关系聚合关系组合关系关联关系依赖关系总结 简介        面向对象程序设计中,要实现复杂的模块化系统,需要将系统划分为多个对象并组织它们之间的关系,这就涉及到常说的面向对象五大依赖关系。这五种依赖关系分别是:继承、聚合、组合、关联和依......
  • 学习Golang时遇到的似懂非懂的概念
    背景......
  • 【云原生概念和技术】1.2 云原生技术概括(中)
    如果想了解或者学习云原生的友友们,欢迎订阅哦~......