力扣-链表-19 删除链表倒数第N个节点

思路

链表题目中操作链表的需要找到要操作节点的上一个节点,所以cur是当前想要操作的节点上一个节点

代码

cpp 复制代码
class Solution {
public:
    ListNode* removeNthFromEnd(ListNode* head, int n) {
        ListNode* dummy_head = new ListNode();
        dummy_head->next = head;
        int size = 0;
        while(head != nullptr){
            head = head->next;
            size++;
        }
        ListNode* cur = dummy_head;
        while(size - n){
            cur = cur->next;
            n++;
        }
        cur->next = cur->next->next;
        return dummy_head->next;
    }
};
相关推荐
圣保罗的大教堂1 小时前
leetcode 835. 图像重叠 中等
leetcode
wabs6665 小时前
关于二叉树【力扣572.另一棵树的子树的思考】
数据结构·c++·算法·leetcode·二叉树
hanlin035 小时前
刷题笔记:力扣第41题-缺失的第一个正数
笔记·算法·leetcode
码行山野赴时序归途7 小时前
链表家族收官篇:循环链表
c语言·开发语言·数据结构·链表
0+1117 小时前
算法 --滑动窗口
c++·算法·leetcode
木井巳9 小时前
【记忆化搜索】最长递增子序列
java·算法·leetcode·深度优先·剪枝·推荐算法
圣保罗的大教堂11 小时前
leetcode 1401. 圆和矩形是否有重叠 中等
leetcode
hanlin0311 小时前
刷题笔记:力扣第76题-最小覆盖子串
笔记·算法·leetcode
随便发挥15 小时前
Leetcode 剑指 Offer II 186. 文物朝代判断
leetcode
6Hzlia15 小时前
【Classic 150 刷题计划】 LeetCode 205. 同构字符串 | C++ 双向绑定与哈希表映射
c++·算法·leetcode