LeetCode:19.删除链表倒数第N个节点

跟着carl学算法,本系列博客仅做个人记录,建议大家都去看carl本人的博客,写的真的很好的!
代码随想录
LeetCode:19.删除链表倒数第N个节点

给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。

示例 1:

输入:head = [1,2,3,4,5], n = 2

输出:[1,2,3,5]

示例 2:

输入:head = [1], n = 1

输出:[]

示例 3:

输入:head = [1,2], n = 1

输出:[1]

快慢指针,注意下循环的终止条件

java 复制代码
	public ListNode removeNthFromEnd(ListNode head, int n) {
        ListNode dummyHead = new ListNode();
        dummyHead.next = head;
        ListNode cur = dummyHead;
        ListNode slow = dummyHead;
        ListNode fast = dummyHead;
        while(n-- > 0){
            fast = fast.next;
        }
        while(fast.next != null){
            fast = fast.next;
            slow = slow.next;
        }
        slow.next = slow.next.next;
        return dummyHead.next;   
    }
相关推荐
自不量力的A同学34 分钟前
如何利用人工智能算法优化知识分类和标签?
人工智能·算法·分类
CodeJourney.1 小时前
PyTorch不同优化器比较
人工智能·pytorch·算法·能源
winner88811 小时前
对比学习损失函数 - InfoNCE
学习·算法·对比学习·infonce
南宫生2 小时前
力扣-数据结构-12【算法学习day.83】
java·数据结构·学习·算法·leetcode
KeyPan2 小时前
【数据结构与算法:五、树和二叉树】
java·开发语言·数据结构·人工智能·算法·机器学习·计算机视觉
WBingJ2 小时前
机器学习基础-贝叶斯分类器
人工智能·算法·机器学习
Lenyiin3 小时前
第431场周赛:最长乘积等价子数组、计算字符串的镜像分数、收集连续 K 个袋子可以获得的最多硬币数量、不重叠区间的最大得分
c++·算法·leetcode·周赛·lenyiin
行知SLAM3 小时前
第0章 机器人及自动驾驶SLAM定位方法全解析及入门进阶学习建议
人工智能·算法·机器人·自动驾驶
Cedric_Anik5 小时前
数据结构——链表
数据结构·链表
起名方面没有灵感5 小时前
力扣23.合并K个升序链表
java·算法