[力扣 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;
    }
};
相关推荐
IronMurphy12 小时前
算法五十一 64. 最小路径和
算法
醒醒该学习了!12 小时前
Prompt提示词——带有深度思考模型的提示方法(理论篇)
人工智能·算法·prompt
君为先-bey12 小时前
Latte——视频生成的潜在扩散变换器
算法·机器学习·音视频·扩散模型
浅念-12 小时前
LeetCode刷题专题:FloodFill泛滥填充算法剖析
数据结构·算法·leetcode·职场和发展·深度优先·宽度优先
笨蛋不要掉眼泪13 小时前
Java并发编程:深入剖析 ArrayBlockingQueue
java·开发语言·算法·并发
菜菜的顾清寒13 小时前
力扣HOT100(33)二叉树的最大深度
算法·leetcode·职场和发展
Deepoch13 小时前
Deepoc数学大模型:重塑半导体研发与制造的核心算法范式
人工智能·算法·机器学习·半导体·deepoc·数学大模型
一支黑色の铅笔13 小时前
MongoDB Aggregation Pipeline 常用 Stage 速查
数据库·算法·mongodb
Bingorl13 小时前
机器学习之决策树算法
算法·决策树·机器学习
qingyulee13 小时前
线性回归、决策树
人工智能·算法·线性回归