首页 > 其他分享 >数据结构-->单链表OJ题--->讲解_01

数据结构-->单链表OJ题--->讲解_01

时间:2023-03-23 22:01:41浏览次数:36  
标签:10 OJ val -- oss 链表 --- process image

老铁们,本期我们开讲单链表OJ题的讲解:

删除单链表中给定的val值,并将剩余的链表进行链接

数据结构-->单链表OJ题--->讲解_01_链表中删除 val值

本题中val的值是11,删除后的图示链接为 :>

数据结构-->单链表OJ题--->讲解_01_链表中删除 val值_02

显然,我们需要指针 cur 移动来寻找 指定数值val的值,此后运用值覆盖原理!!随后,将val所在空间进行释放

代码如下:

数据结构-->单链表OJ题--->讲解_01_链表中删除 val值_03

现对代码分模块进行解释 :>

在进行解释之前,先看看指针的走向过程 :>

数据结构-->单链表OJ题--->讲解_01_链表中删除 val值_04

指针cur的走向移动到第一个要删除的 val值的时候,请注意 prev 指针在cur之前 !!

这是为了更好的运用值覆盖原。如此,更好地理解了,为什么会有 prev指针的存在!!

除此之外,我更想解释地是,如下代码 :>

数据结构-->单链表OJ题--->讲解_01_链表中删除 val值_05

tail 在此作何用处!!

显然,tail 是为了保存下一个节点的值,以便于后续找到了指定值 val 后,经过释放后,更新 cur 的值

从而保证整体逻辑的严密性!!

还有以下的代码 :>

数据结构-->单链表OJ题--->讲解_01_链表中删除 val值_06

显然,这是一种特殊情况的考虑,即是要删除的 val 的值,位于第一位置,即头部处!!

这个时候,就需要更新 phead 的位置,毕竟一个链表中总要有象征性的头“phead”!!

当然了,还有一种极其特殊的情况需要考虑!!那就是,链表中全是要删除的 val 值

此时的这部分代码,也可以做充足的逻辑判断!!只是最终将无头 phead 

即是返回的将是一个空链表!!仍然符合我们预期!!

现在,让给我们进入测试环节吧!!

数据结构-->单链表OJ题--->讲解_01_链表中删除 val值_07

代码执行的结果,如下所示 :>

数据结构-->单链表OJ题--->讲解_01_链表中删除 val值_08

好了! 本题的解析已结束!!希望能对老铁们有所帮助!!感谢阅读!!

标签:10,OJ,val,--,oss,链表,---,process,image
From: https://blog.51cto.com/u_15808800/6145987

相关文章

  • IT环境建设上的关键技术点
    线下环境细分出集成测试环境、开发测试环境以及多个项目环境之后,带来的最大的成本其实不在资源上,而是在管理和维护上,而且单单就线下维护的工作量来说,甚至要超过线上维护的工......
  • 分布式存储系统之Ceph集群
    1、ceph启动时配置文件生效顺序是$CEPH_CONF---->-cpath/path---->/etc/ceph/ceph.conf---->~/.ceph/config---->./ceph.conf 2、将创建的卷映射成块设备因为rbd镜像的一......
  • 分布式事务-CAP 和 BASE 理论以及几种方案
    一、为什么会有分布式事务#分布式系统经常出现的异常,如机器宕机、网络异常、消息丢失、数据错误、不可靠的TCP、存储数据丢失等等。二、分布式事务分布式事务是指事务的......
  • jsonpath解析淘票票城市
    步骤:首先找到城市的接口通过F12打开检查点击北京即可得到爬取数据的接口打开url发现显示的是jsonp121({"returnCode":"0","returnValue":{}});原因:​ 淘票票的请求头......
  • code tips
    不写注释是个坏习惯!多写注释!方便自己也方便他人:P(打acm养成的坏观念,以为代码过了就行,但以后涉及到和他人合作的项目,就不能这样(华为软挑队友是反面教材,搞得我很难受,所以有......
  • 日结
    时长2h代码量50内容地铁查询代码纠错:查询线路和站点时,会有重复的部分,原因是数据表中有部分重复,解决办法为将查询结果放到集合list中,再使用LinkedHashSet方法去除重复......
  • 我在写sql脚本 把一段带有多个单引号的sql字符串 插入到一个表中带有字符串类型的字
    里面的单引号要转义,\',但是结果还是不成功,因为oracle的转义字符是‘  解决方法:两个单引号等于一个单引号   ......
  • python内置函数1
    abs()divmod()pow()len()ord()chr()id()min()max()......
  • ESXi 搭建 ALL IN ONE 服务器之ESXi系统安装篇
    第一部分:制作ESXI安装U盘1.准备一个U盘(大小没有要求),插入电脑。2.打开Rufus这个软件,提示联网检查更新,选否即可。3.请确保设备为你需要写入的U盘。然后点击......
  • Spring Bean生命周期、扩展接口
    1.生命周期简图  2.扩展接口介绍2.1Aware接口在spring中Aware接口表示的是感知接口,表示spring框架在Bean实例化过程中以回调的方式将特定在资源注入到Bean中去(......