给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。

进阶:你能尝试使用一趟扫描实现吗?

输入:head = [1,2,3,4,5], n = 2
输出:[1,2,3,5]

示例 2:

输入:head = [1], n = 1
输出:[]

示例 3:

输入:head = [1,2], n = 1
输出:[1]

提示:

链表中结点的数目为 sz
1 <= sz <= 30
0 <= Node.val <= 100
1 <= n <= sz

代码如下:

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode() : val(0), next(nullptr) {}*     ListNode(int x) : val(x), next(nullptr) {}*     ListNode(int x, ListNode *next) : val(x), next(next) {}* };*/
class Solution {public:ListNode* removeNthFromEnd(ListNode* head, int n) {ListNode *dummy = new ListNode;ListNode *cur = dummy;cur->next = head;int len = getlength(head);for (int i = 1;i<len-n+1;i++){cur = cur->next;}cur->next = cur->next->next;ListNode *idx = dummy->next;delete dummy;return idx;}int getlength(ListNode *head){int len = 0;while(head){head = head->next;len++;}return len;}
};

LeetCode 19删除链表的倒数第N个节点-中等相关推荐

  1. [链表|多解法] leetcode 19 删除链表的倒数第N个节点

    [链表|多解法] leetcode 19 删除链表的倒数第N个节点 1.题目 题目链接 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: 1->2-&g ...

  2. 【亡羊补牢】挑战数据结构与算法 第59期 LeetCode 19. 删除链表的倒数第N个节点(链表)

    仰望星空的人,不应该被嘲笑 题目描述 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. ...

  3. leetcode 19. 删除链表的倒数第N个节点(双指针)

    给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 ...

  4. leetcode —— 19. 删除链表的倒数第N个节点

    给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 ...

  5. [leetcode]19.删除链表的倒数第N个节点

    给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点. 进阶:你能尝试使用一趟扫描实现吗? 示例 1: 输入:head = [1,2,3,4,5], n = 2 输出:[1,2,3,5] ...

  6. Leetcode 19. 删除链表的倒数第N个节点

    原题链接 解法:双指针 思路:第一个点可以能被删除,所以需要一个虚拟头节点.被删除的点位于倒数第n的位置,因为是单链表,即找到倒数n + 1最后,想要删除这个节点必须要保留它的前一个节点使其p-> ...

  7. C++ leetcode 19. 删除链表的倒数第N个节点 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。

    一.思路: 遍历一遍存储节点到vector数组中,然后利用数组指向倒数第n个,将倒数n-1的节点的next指向倒数n的next 二.代码: class Solution { public:ListNo ...

  8. Leetcode算法Java全解答--19. 删除链表的倒数第N个节点

    Leetcode算法Java全解答–19. 删除链表的倒数第N个节点 文章目录 Leetcode算法Java全解答--19. 删除链表的倒数第N个节点 题目 想法 结果 总结 代码 我的答案 大佬们的 ...

  9. 领扣(LeetCode)删除链表的倒数第N个节点 个人题解

    给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1 ...

最新文章

  1. Halcon算子盘点:Chapter 19:轮廓线XLD
  2. My Lead route attach and detach issue
  3. oracle+去括号,关于001 TK的几个问题,请大家一起讨论一下
  4. (NO.00004)iOS实现打砖块游戏(八):游戏中小球与砖块的碰撞
  5. [Leedcode][JAVA][第9题][回文数][数学法]
  6. RabbitMQ和Kafka的显著差异(1)
  7. python画折线图虚线_python绘制简单折线图代码示例
  8. CRT远程工具连接服务器CentOS
  9. UE源码版本下载编译全流程
  10. excel生成随机手机号
  11. 台湾大学林轩田机器学习技法课程学习笔记8 -- Adaptive Boosting
  12. sticky粘性定位
  13. 算法:一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法.
  14. 双三次插值算法的OpenGL实现
  15. 蚪侠-远程泛目录V21(镜像版)-免授权
  16. day1-python猜单词游戏
  17. 【操作系统】--面包师问题
  18. 直流电源系统模块组成,直流电源系统作用
  19. C++编程最基础练习题(1-10) 小白入门必刷
  20. 医疗时鲜资讯:自由执业能否给电子病历、影像中心 “云端化” 带来机遇?

热门文章

  1. C语言试题五十一之已知学生的记录是由学号和学习成绩构成,n名学生的数据已存入s结构体数组中。请编写函数fun,该函数的功能是:找出成绩最高的学生记录,通过形参返回主函数(规定只有一个最高分)。
  2. php基础教程 第七步数组补充及循环基础
  3. amap vueamap 与_在vue中使用高德地图vue-amap
  4. python重定向_在Python中使用urlopen()防止“隐藏”重定向
  5. 计算机模拟考总结,高职单考单招计算机模拟一技术总结.doc
  6. 计算机应用问题,计算机应用的现状与发展的问题
  7. python程序题斐波那契数列_Python_经典题_斐波那契数列
  8. android studio button位置_免费的Android开发环境
  9. 为什么那么好的女孩子还单身?
  10. 连锁反应装置积木好玩到尖叫!