当前位置: 首页 > news >正文

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

思路

双指针法,快指针用于与慢指针拉开距离,慢指针用于删除元素,越过慢指针后面的元素。

具体删除时,应该注意如果倒数第N个结点是头结点的话,slow指向的就是头结点,没有吧办法用

slow->next = slow->next->Next删除

需要添加虚拟头结点,因此fast向后移动n+1个位置

再同时移动fast与slow,直到fast移动到最后,用slow删除元素

/*** 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 *dummyHead =new ListNode(0);dummyHead->next = head;ListNode *fast = dummyHead;ListNode *slow = dummyHead;while(n!=0){fast = fast->next;n--;}fast = fast->next;while(fast!= nullptr){fast = fast->next;slow = slow->next;}ListNode *deletenode = slow->next;slow->next = slow->next->next;delete deletenode;return dummyHead->next;}
};

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 电脑屏幕闪烁?3招教你轻松搞定
  • 恐怖数字暗影:猜中才能逃离
  • FLINK-checkpoint失败原因及处理方式
  • 软件测试09 自动化测试技术(Selenium)
  • 3098. 求出所有子序列的能量和 Hard
  • 农业农村大数据底座:实现智慧农业的关键功能
  • TQSDRPI开发板教程:实现PL端的UDP回环与GPSDO
  • 从零训练一个多模态LLM:预训练+指令微调+对齐+融合多模态+链接外部系统
  • Android车载MCU控制音量和ARM控制音量的区别和优缺点—TEF6686 FM/AM芯片
  • HTTPS 的加密过程 详解
  • 【NLP】提升文本生成多样性的实用方法
  • c++ 高精度加法(只支持正整数)
  • FPGA:频闪灯设计
  • 大厂面试-基本功
  • 【LLM】-05-提示工程-部署Langchain-Chat
  • Google 是如何开发 Web 框架的
  • IE9 : DOM Exception: INVALID_CHARACTER_ERR (5)
  • [笔记] php常见简单功能及函数
  • 77. Combinations
  • centos安装java运行环境jdk+tomcat
  • co模块的前端实现
  • JavaScript新鲜事·第5期
  • js面向对象
  • node 版本过低
  • PHP变量
  • Python实现BT种子转化为磁力链接【实战】
  • Yii源码解读-服务定位器(Service Locator)
  • 翻译 | 老司机带你秒懂内存管理 - 第一部(共三部)
  • 高度不固定时垂直居中
  • 函数式编程与面向对象编程[4]:Scala的类型关联Type Alias
  • 基于Dubbo+ZooKeeper的分布式服务的实现
  • 漂亮刷新控件-iOS
  • 前端面试题总结
  • 如何选择开源的机器学习框架?
  • 设计模式走一遍---观察者模式
  • 为物联网而生:高性能时间序列数据库HiTSDB商业化首发!
  • 我感觉这是史上最牛的防sql注入方法类
  • 一道闭包题引发的思考
  • 应用生命周期终极 DevOps 工具包
  • 用jQuery怎么做到前后端分离
  • 自定义函数
  • ​【数据结构与算法】冒泡排序:简单易懂的排序算法解析
  • ​人工智能之父图灵诞辰纪念日,一起来看最受读者欢迎的AI技术好书
  • # linux 中使用 visudo 命令,怎么保存退出?
  • # Maven错误Error executing Maven
  • #ifdef 的技巧用法
  • #Java第九次作业--输入输出流和文件操作
  • $nextTick的使用场景介绍
  • (10)ATF MMU转换表
  • (BFS)hdoj2377-Bus Pass
  • (c语言)strcpy函数用法
  • (day 2)JavaScript学习笔记(基础之变量、常量和注释)
  • (solr系列:一)使用tomcat部署solr服务
  • (编译到47%失败)to be deleted
  • (补)B+树一些思想