[力扣 Hot100]Day29 删除链表的倒数第 N 个结点

题目描述

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

出处

思路

两个指针间隔n,一趟遍历解决。

代码

cpp 复制代码
class Solution {
public:
    ListNode* removeNthFromEnd(ListNode* head, int n) {
        ListNode* p=head;
        ListNode* q=head;
        while(n>0){
            q=q->next;
            n--;
        }
        if(!q){
            q=p->next;
            delete(p);
            return q;
        }
        q=q->next;
        while(q){
            p=p->next;
            q=q->next;
        }
        q=p->next;
        p->next=q->next;
        delete(q);
        return head;
    }
};
相关推荐
wubba lubba dub dub7501 分钟前
第三十三周 学习周报
学习·算法·机器学习
C+-C资深大佬8 分钟前
C++数据类型
开发语言·c++·算法
多米Domi01124 分钟前
0x3f 第35天 电脑硬盘坏了 +二叉树直径,将有序数组转换为二叉搜索树
java·数据结构·python·算法·leetcode·链表
想逃离铁厂的老铁31 分钟前
Day45 >> 115、不同的子序列 + 583. 两个字符串的删除操作 + 72. 编辑距离
算法·leetcode
cyyt36 分钟前
深度学习周报(1.12~1.18)
人工智能·算法·机器学习
范纹杉想快点毕业41 分钟前
C语言核心机制全解:内存、地址、数组与指针,共计30000字
算法
Σίσυφος19001 小时前
RANSAC算法原理与应用
算法
我星期八休息1 小时前
MySQL数据可视化实战指南
数据库·人工智能·mysql·算法·信息可视化
程序员-King.1 小时前
day144—递归—平衡二叉树(LeetCode-110)
算法·leetcode·二叉树·递归
老鼠只爱大米2 小时前
LeetCode经典算法面试题 #739:每日温度(单调栈、动态规划等多种实现方案详解)
算法·leetcode·面试·动态规划·单调栈·每日温度