关于链表【力扣19.删除链表的倒数第N个节点的思考】

目录

一、注意思想

二、本题精髓

三、关键思路

四、本题题目和代码

五、注意事项


一、注意思想

1、注意快慢指针的思想不仅可以用在数组,还可以用在链表

2、注意虚拟头节点思想

二、本题精髓

让快指针先走n+1步

三、关键思路

(加入虚拟头节点,快慢指针初始指向虚拟头节点)

1、让快指针先走n+1步

2、然后快慢指针同时向前走(fast指针为空之时,慢指针走到要删除的节点的前一个位置)

3、执行删除操作

四、本题题目和代码

五、注意事项

1、链表类的题目尽可能都用虚拟头节点(因为涉及到一些操作可能会导致当前头节点会变)

// 比如这道题如果要删倒数第5个节点,头节点就变了。

// 用虚拟头节点的话,最后直接返回虚拟头节点的下一个节点就行

//(不需要考虑是否删除的是头节点,方便操作)

2、while(n-- && fast != nullptr)只能保证fast先走n步,后面要手动多走1步

3、觉得自己思路正确,但是运行不过去的时候,回去检查一下是不是有地方漏东西了

相关推荐
橘子汽水1683 小时前
Leetcode 230,98:二叉搜索树中第K小的元素,验证二叉搜索树
算法·leetcode·职场和发展
普通攻击往后拉5 小时前
Leetcode 448. 找到所有数组中消失的数字
算法·leetcode·职场和发展
mifengxing5 小时前
LeetCode 189 轮转数组|3种解法拆解,从暴力到O(1)原地最优解
数据结构·算法·leetcode
MIngYaaa5205 小时前
2026暑期牛客多校3 2026-7-24
数据结构·算法·000
2501_937860945 小时前
Java 集合底层深度剖析:Map 与 Set、二叉搜索树、哈希表全解
java·数据结构·散列表
Hommy886 小时前
【剪映小助手】字符串列表转对象接口(Str List To Obds)
数据结构·list·剪映小助手·视频剪辑自动化·剪映api·开源剪映小助手
noipp7 小时前
推荐题目:洛谷 P3726 [AHOI2017/HNOI2017] 抛硬币
c语言·数据结构·c++·算法·编程·洛谷·luogu
程序员-珍7 小时前
力扣 877. 石子游戏
算法·leetcode·游戏
Rabitebla7 小时前
C++ STL 之 set 详解:从底层红黑树到实际应用
开发语言·数据结构·c++·算法·leetcode