2.3.2 单链表的插入结点操作

news2024/9/21 16:47:02

--单链表示意图

一、按位序插入(带头结点)

①表头插入

 注意点

1.i=1,while循环不执行

2.时间复杂度为O(1)

3.p!=NULL表示指针p有指向结点

4.头结点为第0个结点

5.p=L表示指针p和L指向位置相同(头结点),p等于L

6.代码段理解

 --malloc函数创建新空间,赋给结点s

--e赋值给结点s.data

--结点s的指针指向.next和结点p的指针指向(p.next)的位置相同(a1.data)

7.代码绿黄不能替换顺序,替换后变为指向s自己

②表中插入

 注意点:

1.i=3,while循环执行2次,p指向第2个结点,p=p->next表示p依次往后扫描

2.s.next指向a3.data

③表尾插入

注意点:

1.j表示p当前指向第几个结点,所以需要累加找到i-1个位置

2.循环表示找到第i-个结点,因为要在该结点后插入新结点

3.s.next指向NULL

4.时间复杂度为最坏O(n),n表示表的长度

5.i>6,i值不合理,return false

 二、按位序插入(不带头结点)

①插在表头

 --L=s,更改头指针L

 ②不插在表头

三、指点结点的后插操作

 

 注意点:

1.指定结点的后续结点是可知的

2.时间复杂度为O(1)

3.内存分配问题

 四、指定结点的前插操作

①插入头指针法

 ②直接改变指定结点的前驱结点的data值

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/416867.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ORB_SLAM3_优化方法 Pose优化

PoseOptimization PoseOptimization主要的作用是利用重投影优化单帧的位姿,主要用在Tracking的几种跟踪模式TrackWithMotionModel、TrackReferenceKeyFrame、 TrackLocalMap、Relocalization中 输入 优化变量观测帧的Pose帧的MapPoint帧的KeyPoint初始化 //创建优化器 g2o…

4.Java逻辑控制语句

Java逻辑控制语句 在实际生活中,我们的生活不是一成不变的,很多时候需要我们去选择,大到人生的十字路口,小到今天晚上吃什么,选择无处不在。小的选择决定了我们一件小事的走向,大的选择可能会改变我们人生…

大模型“云上经济”之权力游戏

文丨谭婧光阴者百代之过客。世人皆过客,软件亦如此。人工智能已有新旧之分。网友戏称,新人工智能是ChatGPT,旧人工智能是“之前那些”。历史在重演。云计算在美国问世的时候,否定论调居多。一个常见的否定论调是「做生意不用上云」…

vite+vue3使用UEditorPlus ,后端PHP

vitevue3使用UEditorPlus什么是UEditorPlus功能亮点前端安装安装vue-ueditor-wrap3.x下载 UEditorPlus在main.js注册组件v-model 绑定数据后端配置效果百度富文本编辑器是目前所有编辑器中功能最丰富的,但长时间不进行维护了。之前写了一篇使用UEditor的教程&#x…

回调函数含义查询云记debug调试

回调函数 同步回调函数 回调函数通常就是当父函数执行完后,再执行通过传参进来的函数,当然也可以不传参,直接在父函数内部调用回调函数 注:立即执行回调,执行完回调代码才会继续往下执行 function a(callback) {a…

力扣:两数之和(哈希表)

1、两数之和 1、问题描述 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那两个整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。…

如何利用超级电容设计简单的不间断电源

如何利用超级电容设计简单的不间断电源 在许多应用中,电源电压无论在什么情况下都持续可用是很重要的。要确保这一点有时并不容易。一种新概念可以为设计极其紧凑的不间断电源提供一种优化解决方案。 问题: 在电源关键型应用中,如何更轻松地获得持续、…

【Android平板编程】远程Ubuntu服务器code-server编程写代码

文章目录前言1.ubuntu本地安装code-server2. 安装cpolar内网穿透3. 创建隧道映射本地端口4. 安卓平板测试访问5.固定域名公网地址5.结语前言 本次教程将在 Ubuntu 服务器环境下安装 code-server ,并使用 Android 安卓平板远程 Ubuntu 服务,进行远程编程开…

Python pandas和numpy用法参考(转)

以下是转载:Python pandas用法 - 简书介绍 在Python中,pandas是基于NumPy数组构建的,使数据预处理、清洗、分析工作变得更快更简单。pandas是专门为处理表格和混杂数据设计的,而NumPy更适合处...https://www.jianshu.com/p/840ba1…

为什么你这么累,销量还不如那些轻松工作的同行?

管理混乱 忙碌却不见成效 在工业品行业做了10多年的小张,最近向我吐槽:每天忙得团团转,结果销售业绩还不如那些整天轻松工作的同行。几番沟通下来,发现小张每天要做这么多的工作,不忙才怪! 管理员工&#x…

xqueue:基于C语言实现的循环队列缓冲区

文章目录1. 为什么需要FIFO2. FIFO的存取顺序3. FIFO的代码实现4. 开源地址精选1. 为什么需要FIFO FIFO 是First-In First-Out的缩写,它是一个具有先入先出特点的缓冲区。 可以理解成一个大的水池,水对应数据,注水速度对应数据输入的频率&a…

第13章_泛型(Generic)

第13章_泛型(Generic) 讲师:尚硅谷-宋红康(江湖人称:康师傅) 官网:http://www.atguigu.com 本章专题与脉络 1. 泛型概述 1.1 生活中的例子 举例1:中药店,每个抽屉外面贴着标签 举例2&#xf…

【Pytorch】神经网络的基本骨架

【Pytorch】神经网络的基本骨架nn.module的基本使用卷积操作神经网络卷积层最大池化的使用-池化层nn.module的基本使用 nn.module是所有神经网络的基本类,其他的所有神经网络都是继承该类,在此基础上进行修改。 上面的forward函数,首先进行卷…

postman进行post、get参数传递及中文乱码和各类型参数传递和json格式传参和日期型参数传递和响应数据传回

postman是一种测试工具 用postman直接在其上输入参数名和参数值就行,不用区分post和get请求方法,当然java代码要改变一点,在响应注解的方法里面添加和postman中输入的参数名一样的形参 get请求: 代码:注意在响应注解…

JUC源码系列-AQS独占锁获取

前言 AQS(AbstractQueuedSynchronizer)是JAVA中众多锁以及并发工具的基础,其底层采用乐观锁,大量使用了CAS操作, 并且在冲突时,采用自旋方式重试,以实现轻量级和高效地获取锁。 AQS虽然被定义…

JUC源码系列-AQS的Condition的接口实现

前言 本篇文章是基于线程间的同步与通信(4)——Lock 和 Condtion 这篇文章写的,在那篇文章中,我们分析了Condition接口所定义的方法,本篇我们就来看看AQS对于Condition接口的这些接口方法的具体实现。 概述 我们在前面介绍Conditon的时候说…

es6和commonJs的区别

一、export语句的区别: ES6 和 CommonJS 是两种不同的 JavaScript 模块化规范,它们的 export 语句有一些区别: export 关键字:在 ES6 中,使用 export 关键字来导出模块中的变量、函数、类等;而在 CommonJS…

【C语言】详解数组(数组的创建和初始化、数组越界以及作为函数参数)

简单不先于复杂,而是在复杂之后。 目录 1. 一维数组的创建和初始化 1.1 数组的创建 1.2 数组的初始化 1.3 一维数组的使用 1.4 一维数组在内存中的存储 1.5 sizeof 和 strlen 2. 二维数组的创建和初始化 2.1 二维数组的创建 2.2 二维数组的初始化 …

Java构造器与this关键字

Java构造器与this关键字\huge{Java构造器与this关键字}Java构造器与this关键字 Java类构造器 作用 在类中定义用于初始化一个类的对象,并且返回对象的地址。(可以理解为就是创建一个对象) 调用实例 Car c new Car(); //无参数调用格式 …

离线安装rancher2.4管理K8S集群并部署服务

在一些公司安装K8S集群或者rancher等软件,都是没有网络的,在这种情况下,需要自己想办法安装!这里给大家介绍在没有网络的情况下,怎么安装rancher和K8S集群,最后在用rancher管理K8S集群部署服务!…