专栏首页*坤的Blogleetcode 19 Remove Nth Node From End of List

leetcode 19 Remove Nth Node From End of List

class Solution {
public:
    ListNode* removeNthFromEnd(ListNode* head, int n) {
        if (!head->next) return NULL;
        ListNode *pre = head, *cur = head;
        for (int i = 0; i < n; ++i) cur = cur->next;
        if (!cur) return head->next;
        while (cur->next) {
            cur = cur->next;
            pre = pre->next;
        }
        pre->next = pre->next->next;
        return head;
    }
};

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • leetcode 2 Add two numbers

    @坤的
  • 提高效率

    @坤的
  • 提高效率

    @坤的
  • 【leetcode刷题】T103-从分类列表中删除重复项目 II

    使用两个指针pre和cur,pre始终指向链表前一部分非重复元素的最后一个节点,cur指向pre指向的节点后重复元素的最后一个节点。当pre->next == ...

    木又AI帮
  • 【Leetcode】82. 删除排序链表中的重复元素 II

    给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。

    Leetcode名企之路
  • LeetCode 图解 | 206.反转链表

    今天分享的题目来源于 LeetCode 上第 206 号问题:反转链表。这道题目经常出现在算法面试中的笔试环节。

    五分钟学算法
  • Swap Nodes in Pairs

    问题:交换相邻的两个结点 分析:建立新链表每次插入ret->next后在插入ret,需要在判断下若最后只有一个结点不需要交换,注意每次交换了结点要把尾结点的下一...

    用户1624346
  • leetcode445. Add Two Numbers II

    链表形式跟非链表形式的最大区别在于我们无法根据下标来访问对应下标的元素。假如我们希望从后往前对每个位置求和,则必须每次都从前往后访问到对应下标的值才可以。因此这...

    眯眯眼的猫头鹰
  • 单链表的直接插入排序

    对于直接插入排序的内容请移步我之前的博客:简单排序 对于单链表的内容请移步我之前的博客:单链表

    AI那点小事
  • 题目:将链表的奇数位和偶数位调换组成新的链表

    题目:将链表的奇数位和偶数位调换组成新的链表 原题链接: http://oj.leetcode.com/problems/swap-nodes-in-pairs...

    程序员小王

扫码关注云+社区

领取腾讯云代金券