[力扣 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;
    }
};
相关推荐
罗湖老棍子1 小时前
【例 2】选课(信息学奥赛一本通- P1576)
算法·树上背包·树型动态规划
每天要多喝水1 小时前
动态规划Day33:编辑距离
算法·动态规划
每天要多喝水1 小时前
动态规划Day34:回文
算法·动态规划
weixin_477271691 小时前
马王堆帛书《周易》系统性解读(《函谷门》原创)
算法·图搜索算法
AomanHao1 小时前
【ISP】基于暗通道先验改进的红外图像透雾
图像处理·人工智能·算法·计算机视觉·图像增强·红外图像
We་ct2 小时前
LeetCode 226. 翻转二叉树:两种解法(递归+迭代)详解
前端·算法·leetcode·链表·typescript
大熊背2 小时前
APEX系统中为什么 不用与EV0的差值计算曝光参数调整量
人工智能·算法·apex·自动曝光
REDcker2 小时前
HDR Vivid 技术介绍
数据库·算法·视频·sdr·屏幕·显示技术·dhr
ab1515172 小时前
2.18完成109、112、113
算法
追随者永远是胜利者2 小时前
(LeetCode-Hot100)64. 最小路径和
java·算法·leetcode·职场和发展·go