力扣 LeetCode 19. 删除链表的倒数第N个结点(Day2:链表)

解题思路:

快慢指针

java 复制代码
class Solution {
    public ListNode removeNthFromEnd(ListNode head, int n) {
        ListNode dummy = new ListNode(-1);
        dummy.next = head;
        ListNode fast = dummy;
        ListNode slow = dummy;
        
        for (int i = 0; i < n; i++) {
            fast = fast.next;
        }
        while (fast.next != null) {
            fast = fast.next;
            slow = slow.next;
        }
        slow.next = slow.next.next;
        return dummy.next;
    }
}
相关推荐
@Aurora.5 分钟前
优选算法【专题三:二分查找算法】
算法
soldierluo5 分钟前
向量与向量数据
人工智能·算法·机器学习
a努力。21 分钟前
字节跳动Java面试被问:一致性哈希的虚拟节点和数据迁移
java·开发语言·分布式·算法·缓存·面试·哈希算法
VT.馒头30 分钟前
【力扣】2622. 有时间限制的缓存
javascript·算法·leetcode·缓存·typescript
Hcoco_me30 分钟前
大模型面试题71: DPO有什么缺点?后续对DPO算法有哪些改进?
人工智能·深度学习·算法·自然语言处理·transformer·vllm
mit6.82434 分钟前
dfs|bfs建图|hash贪心
算法
独自破碎E1 小时前
【新视角】输出二叉树的右视图
leetcode
罗湖老棍子1 小时前
团伙(group)(信息学奥赛一本通- P1385)
算法·图论·并查集
Ka1Yan2 小时前
[链表] - 代码随想录 160. 相交链表
算法·leetcode·链表
Ka1Yan2 小时前
[链表] - 代码随想录 206. 反转链表
数据结构·链表