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

cpp 复制代码
class Solution {
public:
    ListNode* removeNthFromEnd(ListNode* head, int n) {
        ListNode *dummy = new ListNode( 0 );
        dummy->next = head;
        ListNode *fast = dummy;
        ListNode *slow = dummy;
        for ( int i = 0; i < n + 1; i++ ) {
            fast = fast->next;
        }
        while ( fast != nullptr ) {
            fast = fast->next;
            slow = slow->next;
        }
        ListNode *del = slow->next;
        slow->next = slow->next->next;
        delete del;
        return dummy->next;
    }
};
  1. 删除倒数第 N 个结点;
  2. 先让 fast 领先 N + 1 个单位,当 fast 为空,slow 和 fast 中间隔了 N 个结点,slow 是待删除结点的前驱;
  3. slow 的后继指向后继的后继,然后删除后继,释放内存。
相关推荐
刘永鑫Adam12 分钟前
Nature Microbiology | 基于TRACS算法的跨多界宏基因组数据菌株水平溯源推演
算法
小O的算法实验室15 分钟前
2026年SEVC,面向无人机辅助边缘计算的自适应群体智能算法,深度解析+性能实测
算法·边缘计算·智能算法·智能算法改进
高锰酸钾_21 分钟前
计算机网络-网络层-路由算法与路由协议
计算机网络·算法·智能路由器
智者知已应修善业31 分钟前
51单片机4按键控制共阳LED霓虹灯切换1整体闪烁2流水下3流水上4间隔闪烁】2023-10-27
c++·经验分享·笔记·算法·51单片机
XW-ABAP1 小时前
SAP ABAP 实现类似百度谷歌搜索引擎基础算法之一的,编辑距离算法
算法
嵌入式小能手1 小时前
飞凌嵌入式ElfBoard-进程间的通信之信号处理sigaction
linux·算法·信号处理
re林檎1 小时前
算法札记——5.14
算法
研究点啥好呢1 小时前
DJI 机器人视觉算法工程师 面试题精选:10道高频考题+答案解析(背诵版)
算法·面试·机器人·dji
热心网友俣先生1 小时前
2026年认证杯二阶段A题赛题解析
人工智能·算法·机器学习
Black蜡笔小新2 小时前
自动化AI算法训练服务器DLTM深度学习推理工作站AI赋能质检助力制造业智能化转型
人工智能·算法·自动化