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

示例:

给定一个链表: 1->2->3->4->5, 和 n = 2.

当删除了倒数第二个节点后,链表变为 1->2->3->5.
说明:

给定的 n 保证是有效的。

进阶:

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

思路:利用定义两个都指向首节点的指针,第一个指针先移动n次,然后第二个指针移动与第一个指针一起移动,当第一个指针移动到末尾指针的时候,第二个指针刚好移动到倒数第n+1个节点,修改指针指向即可。需要注意临界情况

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode(int x) : val(x), next(NULL) {}* };*/
class Solution {
public:ListNode* removeNthFromEnd(ListNode* head, int n) {if(head==nullptr || head->next==nullptr)return nullptr;ListNode* first = head;ListNode* second = head;for(int i=0;i<n;++i){first = first->next;if(first->next==nullptr && i<n-1)return second->next;}while(first->next!=nullptr){first = first->next;second = second->next;}if(second->next)second->next = second->next->next;return head;}
};

删除链表的倒数第N个节点—leetcode19相关推荐

  1. 刻意练习:LeetCode实战 -- Task11. 删除链表的倒数第N个节点

    背景 本篇图文是LSGO软件技术团队组织的 第二期基础算法(Leetcode)刻意练习训练营 的打卡任务.本期训练营采用分类别练习的模式,即选择了五个知识点(数组.链表.字符串.树.贪心算法),每个知 ...

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

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

  3. 常考数据结构与算法:删除链表的倒数第n个节点

    题目描述 给定一个链表,删除链表的倒数第n个节点并返回链表的头指针 例如, 给出的链表为:1->2->3->4->5, n= 2.删除了链表的倒数第n个节点之后,链表变为1-& ...

  4. python 删除链表中倒数第N个节点

    | 删除链表中倒数第N个节点 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点. 输入:head = [1,2,3,4,5], n = 2 输出:[1,2,3,5] 示例 2: 输入: ...

  5. LeetCode第19题;删除链表的倒数第N个节点

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

  6. LeetCode19删除链表的倒数第N个节点20有效的括号

    维护不易,还请点赞支持,微信搜索bigsai 回复进群一起打卡. 19删除链表的倒数第N个节点 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: 1-> ...

  7. java 链表删除头结点,删除链表的倒数第N个节点,并返回链表的头节点

    面试的时候遇到了一个笔试题,是leetcode的原题,原题的连接: https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list/ ...

  8. LeetCode-19 删除链表的倒数第N个节点

    文章目录 题目描述 我的解法 反思 优化 再次反思 再次优化 总结 Github 题目描述 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: 1->2- ...

  9. 2019-03-18-算法-进化(删除链表的倒数第N个节点)

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

最新文章

  1. Tensorflow |(5)模型保存与恢复、自定义命令行参数
  2. 【struts2+hibernate+spring项目实战】数据报表jxl及生成excel(ssh项目实战)
  3. python 列表 换行_python基础语法学习——参考Python Crash Course
  4. php接口返回错误码,laravel 错误处理,接口错误返回json代码
  5. 《Orange’s 一个操作系统的实现》3.保护模式3----DOS加载.EXE过程
  6. 2015 跨年博文总结
  7. AT2339-[AGC011C]Squared Graph【黑白染色】
  8. python如何设置字体大小_[Python Basic]如何设置 Python 的运行环境
  9. java 中文乱码的解决方法
  10. HTML5系列代码:用户注册页面
  11. 怎么屏蔽计算机集成声卡,win10系统主板集成声卡关闭的设置方案
  12. python根据题库答案自动答题_Selenium实现百度自动答题 懒人获取积分
  13. mysql通过视图插入数据_数据库视图 sql
  14. python曲线拟合预测_数据预测与曲线拟合
  15. java Flink(二十二)Flink实战之电商用户访问量(uv独立访客数)统计 使用:利用set进行数据去重、自定义布隆过滤器,解决状态数据过大、内存过大的问题、使用trigger自定义窗口触发器
  16. 清华大学python_清的解释|清的意思|汉典“清”字的基本解释
  17. 【主板上各种接口和附属部件科普】
  18. 陕师大计算机专业硕士分数线,陕师大考研初试分数线
  19. 奥鹏教育计算机成绩查询,奥鹏远程教育网可以进行我们入学考试成绩查询吗
  20. iOS 通过github自动打包ipa

热门文章

  1. 如何将现有的项目添加到远程的git库里面!
  2. Windows 下 MySQL-python 的安装
  3. php使用Header函数,PHP_AUTH_PW和PHP_AUTH_USER做用户验证及缺点
  4. 查看oracle数据库的连接数以及用户
  5. UESTC 1851 Kings on a Chessboard
  6. SQL语句操作大全(本文系转载)
  7. Fortran 入门——函数调用
  8. Request header field Content-Type is not allowed by Access-Control-Allow-Headers跨域
  9. [网络安全自学篇] 七十.WannaCry勒索病毒复现及分析(三)蠕虫传播机制分析及IDA和OD逆向
  10. C# 系统应用之通过注册表获取USB使用记录(一)