点击上方蓝字设为星标

下面开始今天的学习~

今天分享的题目来源于 LeetCode 上第 237 号问题:删除链表中的节点。

题目描述

请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。

现有一个链表 -- head = [4,5,1,9],它可以表示为:


示例 1:

输入: head = [4,5,1,9], node = 5
输出: [4,1,9]
解释: 给定你链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9.

示例 2:

输入: head = [4,5,1,9], node = 1
输出: [4,5,9]
解释: 给定你链表中值为 1 的第三个节点,那么在调用了你的函数之后,该链表应变为 4 -> 5 -> 9.

说明:

  • 链表至少包含两个节点。

  • 链表中所有节点的值都是唯一的。

  • 给定的节点为非末尾节点并且一定是链表中的一个有效节点。

  • 不要从你的函数中返回任何结果。

题目解析

此题注意的点是没有给我们链表的起点,只给我们了一个要删的节点,与以往处理的情况稍许不同。

之前删除一个节点的方法是要有其前一个节点的位置,然后将其前一个节点的 next连向要删节点的下一个,然后 delete 掉要删的节点即可。

这道题的处理方法是先把当前节点的值用下一个节点的值覆盖,然后我们删除下一个节点即可

动画理解

参考代码

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode(int x) { val = x; }* }*/
class Solution {public void deleteNode(ListNode node) {node.val = node.next.val;node.next = node.next.next;}
}

复杂度分析

时间复杂度:O(1)。

空间复杂度:O(1)。

相关题目推荐

  • LeetCode 26:删除排序数组中的重复项

  • LeetCode 203:移除链表元素

LeetCode 图解 | 237.删除链表中的节点相关推荐

  1. 237. 删除链表中的节点【我亦无他唯手熟尔】

    237. 删除链表中的节点 请编写一个函数,用于 删除单链表中某个特定节点 .在设计函数时需要注意,你无法访问链表的头节点 head ,只能直接访问 要被删除的节点 . 题目数据保证需要删除的节点 不 ...

  2. 237. 删除链表中的节点 golang

    删除链表的节点 https://leetcode-cn.com/problems/delete-node-in-a-linked-list 最优解 把下一个节点的值移动到当前删除节点,然后更改当前节点 ...

  3. LeetCode 237. 删除链表中的节点(Python3)

    题目: 请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点. 现有一个链表 -- head = [4,5,1,9],它可以表示为: 示例 1: 输入: head ...

  4. LeetCode实战:删除链表中的节点

    背景 为什么你要加入一个技术团队? 如何加入 LSGO 软件技术团队? 我是如何组织"算法刻意练习活动"的? 为什么要求团队的学生们写技术Blog 题目英文 Write a fun ...

  5. 237. 删除链表中的节点(C语言)

    请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点.传入函数的唯一参数为 要被删除的节点 . 现有一个链表 – head = [4,5,1,9],它可以表示为: 示例 1: 输入:head = ...

  6. 【解题报告】Leecode 237. 删除链表中的节点——Leecode每日一题系列

    今天是坚持每日一题打卡的第八天 题目链接:https://leetcode-cn.com/problems/minimum-operations-to-convert-number/ 题解汇总:htt ...

  7. 237删除链表中的节点(单链表基本操作)

    1.题目描述 请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点. 说明: 链表至少包含两个节点. 链表中所有节点的值都是唯一的. 给定的节点为非末尾节点并且一定 ...

  8. 22. Leetcode 237. 删除链表中的节点 (链表-基础操作类-删除链表的节点)

    请编写一个函数,用于 删除单链表中某个特定节点 .在设计函数时需要注意,你无法访问链表的头节点 head ,只能直接访问 要被删除的节点 .题目数据保证需要删除的节点 不是末尾节点 .示例 1:输入: ...

  9. leetcode 237. 删除链表中的节点(左神算法:一种怪异的节点删除方式、此方法存在的问题分析)

    题目 题解 一种怪异的节点删除方式 本题的思路很简单,举例就能说明具体的做法. 例如,链表1->2->3->null,只知道要删除节点2,而不知道头节点.那么只需把节点2 的值变成节 ...

  10. LeetCode 237. 删除链表中的节点(思维)

    请编写一个函数,用于 删除单链表中某个特定节点 .在设计函数时需要注意,你无法访问链表的头节点 head ,只能直接访问 要被删除的节点 . 题目数据保证需要删除的节点 不是末尾节点 . https: ...

最新文章

  1. vs2012创建Windows服务
  2. 若依前后端分离版实现基于el-tree实现选中部门树节点同步选中多选框的操作
  3. Linux/Unix下的任务管理器-top命令
  4. opencv+pythons相机标定源码解析
  5. 往IOC 容器中添加组件的方式
  6. mysql根据经纬度查询范围内数据,并根据距离排序
  7. 【数据结构和算法笔记】二叉树和树/森林的相互转换
  8. 【动态规划 回文串11】LeetCode 516. Longest Palindromic Subsequence
  9. 音频播放IOS:AVAudioPlayer音频播放器
  10. NetBean将IDE设置导出为Zip存档
  11. pdf加水印怎么加?五个步骤非常简单
  12. html 加载c盘下的图片,SpringBoot取本地(服务器)的图片展示在html页面解决办法...
  13. DSA815频谱分析仪技术参数
  14. jsp调试java_[求助]jsp+javaBean调试环境问题!
  15. 公开课|“技术+法律”隐私计算如何助力数据合规
  16. 【智能合约】编写复杂业务场景下的智能合约——可升级的智能合约设计模式(附Demo)
  17. 有向图的邻接矩阵表示求各节点的度、出度和入度-----数据结构与算法笔记
  18. 数据结构课设任务内容
  19. 易语言点击按钮打开浏览器中指定的网页
  20. vue项目引入彩色iconfont图标

热门文章

  1. 亚马逊注册成功,需要的进一步的设置一:税务信息设置
  2. Intellij IDEA设置类的文件头注释(@Author)(一)
  3. python中的index函数
  4. 《回话的技术》读后感
  5. 成功解决AttributeError: ‘Series‘ object has no attribute ‘split‘
  6. 广东第一高中生_广东男篮签下全美第一高中生 NBA状元热门征战CBA
  7. linux gz he xz,gz与xz两种压缩格式的对比
  8. 安装Aras Innovator
  9. 高阶篇:4.2.5)DFMEA建议措施及后续完备
  10. Github系列教程一 ————开门