首页 > 其他分享 >剑指 Offer 18. 删除链表的节点

剑指 Offer 18. 删除链表的节点

时间:2023-05-15 10:12:17浏览次数:49  
标签:pre head cur val Offer 18 next 链表

题目描述:

给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。

返回删除后的链表的头节点。

 

 

 

 

 

复杂度分析:
  时间复杂度 O(N) : N 为链表长度,删除操作平均需循环 N/2 次,最差 N 次。
  空间复杂度 O(1) : cur, pre 占用常数大小额外空间。

class Solution{
    public ListNode deleteNode(ListNode head,int val){
        if(head.val==val) return head.next;
        ListNode pre = head,cur=head.next;
        while(cur!=null&&cur.val!=val){
            pre = cur;
            cur = cur.next;
        }
        if(cur!=null) pre.next = cur.next;
        return head;
    }
}

 

标签:pre,head,cur,val,Offer,18,next,链表
From: https://www.cnblogs.com/zhz123567/p/17401003.html

相关文章

  • Exadata X4-2 刷机至18.1.34版本遇到的问题
    客户有一套ExadataX4-2,计划从目前的11.2.3.3.1版本升级至18.1.34版本,但其中的一台计算节点在升级过程中遇到很多的故障,最终决定将这个已经升级失败的计算节点刷机至18.1.34版本。 本文主要记录将ExadataX4-2刷机至18.1.34版本时,遇到的一些异常情况。在刷机刚开始不久,会进入......
  • 剑指 Offer 03. 数组中重复的数字
    题目找出数组中重复的数字。在一个长度为n的数组nums里的所有数字都在0~n-1的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。其中,2<=n<=100000示例输入:[2,3,1,0,2,5,3]输出:2或3......
  • 5-14打卡 力扣24. 两两交换链表中的节点
    给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。示例1:输入:head=[1,2,3,4]输出:[2,1,4,3]示例2:输入:head=[]输出:[]示例3:输入:head=[1]输出:[1]来源:力扣(LeetCode)链接:https://leetco......
  • 燃料电池多点恒功率工作Cruise仿真模型!!!本模型基于Cruise2019版及Matlab2018a联合搭建
    燃料电池多点恒功率工作Cruise仿真模型!!!本模型基于Cruise2019版及Matlab2018a联合搭建调试而成,能够按照设定策略正常运行。其中燃料堆控制、电机扭矩控制、再生制动、机械刹车等功能实现基于Matlab/Simulink搭建调试,整车模型基于Cruise完成。ID:96100652450357099......
  • 燃料电池功率跟随cruise仿真模型!!!此模型基于Cruise2019版及Matlab2018a搭建调试而成,跟
    燃料电池功率跟随cruise仿真模型!!!此模型基于Cruise2019版及Matlab2018a搭建调试而成,跟随效果很好,任务仿真结束起始soc几乎相同。控制模型主要包括燃料堆控制、DCDC控制、驱动力控制、再生制动控制、机械制动等模块,均结合实际项目经验搭建而成。ID:25150652451089811......
  • APIO2018~2022做题记录
    APIO2018~2022做题记录1.[APIO2021]封闭道路题意:一棵大小为\(n\)的树,有边权,设\(f(x)\)表示要满足所有点的\(deg\leqslantx\)所要删掉的边的边权和的最小值,求出\(f(0)\)到\(f(n)\)思路:先考虑对于每个\(x\)计算答案。设\(dp[i][0/1]\)表示\(i\)向上连的边删或不删时的最小代价......
  • AList – 聚合阿里云盘、百度网盘、PikPak、WebDav 等 18 款网盘:文件预览、上传/下载,
     Alist是什么?AList–聚合阿里云盘、百度网盘、PikPak、WebDav等18款网盘:文件预览、上传/下载,直接播放视频他的最大用途就是直接播放网盘视频,并且是通过你喜欢的播放器:AlistHelper-图形界面的Alist:聚合加载115/阿里云盘/百度网盘/OneDrive/迅雷/夸克/等20+网盘文......
  • cf1832
    cf1832A.NewPalindrome题目链接看回文字符串经过重排是不是还能组成回文字符串。如果字符串不计只出现一次的字符,其余有多个字符都出现偶数次,那么就重排可以组成新的回文字符串。//Problem:A.NewPalindrome//Contest:Codeforces-EducationalCodeforcesRound148......
  • 链表的倒数第k个节点
     /***Definitionforsingly-linkedlist.*structListNode{*intval;*ListNode*next;*ListNode(intx):val(x),next(NULL){}*};*///classSolution{//public://ListNode*getKthFromEnd(ListNode*head,intk){//if(head!=......
  • 【❂Java集合】循环链表和双向链表的区别是是什么
    最后一个结点指针指向不同在建立一个循环链表时,必须使其最后一个结点的指针指向表头结点,而不是像双向链表那样置为NULL。此种情况还用于在最后一个结点后插入一个新的结点。判断链域值不同在判断是否到表尾时,是判断该结点链域的值是否是表头结点,当链域值等于表头指针时,说明已到......