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

网站可以跟博客做互链吗做服装辅料一般什么网站找客户

网站可以跟博客做互链吗,做服装辅料一般什么网站找客户,宝应县天宇建设网站,网站建设满意度问卷调查题解:删除链表的倒数第 N 个节点(LeetCode 第 19 题)一、题目描述 给定一个单链表,删除链表的倒数第 n 个节点,并返回链表的头节点。二、解题思路 如果我们从头遍历链表,想找“倒数第 n 个节点”&#xff0…

在这里插入图片描述

题解:删除链表的倒数第 N 个节点(LeetCode 第 19 题)


一、题目描述

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


二、解题思路

如果我们从头遍历链表,想找“倒数第 n 个节点”,必须知道整个链表长度。但那样就要 遍历两次链表

为了优化效率,这里我们使用一个非常常用的技巧:

双指针法(快慢指针) —— 只遍历一次!

技巧关键:

  • 创建两个指针 p1p2
  • 先让 p1 先走 n 步
  • 然后 p1p2 一起走,直到 p1 到达链表末尾;
  • 此时 p2 就正好在 倒数第 n 个节点的前一个节点

这样我们就可以通过 p2->next = p2->next->next 删除目标节点了。

为了简化边界处理(比如删除的是头结点),我们使用一个 虚拟头结点 dummy


三、代码实现

/*** 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:// 主函数:删除倒数第 n 个节点ListNode* removeNthFromEnd(ListNode* head, int n) {// 虚拟头节点,处理头节点被删除的情况ListNode* dummy = new ListNode(0);dummy->next = head;// 找到倒数第 n+1 个节点(即待删节点的前一个)ListNode* x = findFromEnd(dummy, n + 1);// 删除操作:跳过第 n 个节点x->next = x->next->next;// 返回新链表头return dummy->next;}// 辅助函数:找到倒数第 n 个节点ListNode* findFromEnd(ListNode* head, int n){ListNode* p1 = head;// 先让 p1 向前走 n 步for(int i = 0; i < n; ++i){p1 = p1->next;}// 然后让 p1 和 p2 一起走ListNode* p2 = head;while(p1 != nullptr){p1 = p1->next;p2 = p2->next;}// p2 就是倒数第 n 个节点return p2;}
};

四、时间复杂度分析

操作复杂度
单次遍历链表O(L),L 是链表长度
空间复杂度O(1),只使用了两个指针

所以这是一个 时间 O(n)、空间 O(1) 的解法。


http://www.dtcms.com/a/578259.html

相关文章:

  • 体育馆客流系统让人流量数据可视化
  • 政协网站建设申请函wordpress表格折叠插件
  • 软件常用运行库:一篇解决缺少运行库问题
  • LeetCode 417 - 太平洋大西洋水流问题
  • kamailio+rtpengine对sdp的处理
  • 深圳市制作网站上海跨境电商网站制作
  • 今日行情明日机会——20251106
  • 短视频制作app网站内部优化怎么做
  • qq钓鱼网站制作建设展示类网站的意义
  • Windows通过WSL2安装Docker
  • ART虚拟机 | 类加载详解
  • 做面包网站wordpress外贸发布接口
  • 【AI应用探索】-7- LLaMA-Factory微调模型
  • AWS Elastic Beanstalk 实现 Java 应用高可用部署指南
  • 监理网站河南网站seo营销多少费用
  • 网站的注册做网站需要提供什么条件
  • 密码学系统的核心防护:FUZZ测试(模糊测试)技术原理与行业实践
  • ubuntu20.0.4源码安装Colmap流程
  • 做网站卖东西送上门网站title的写法
  • Windows 系统安装 Composer 详细教程
  • wordpress 切换域名网站代码优化有哪些
  • 中小工厂erp管理系统济南网站建设seo优化
  • 国产ASP4644I6B降压稳压器在工业仪表中的应用实践与分析
  • TRO侵权预警|Theodoros爆款食物插画发起版权维权
  • 4.1 Boost库工具类noncopyable的使用
  • ubuntu连接airpods
  • wordpress评分点评成都网站搭建优化推广
  • 保山手机网站建设影视公司网站建设
  • Poll 服务器实战教学:从 Select 迁移到更高效的多路复用
  • 代码管理——VS Code|Git