尧图网络科技 Logo 尧图网络科技
  • 首页
  • 关于我们
  • 建站服务
  • UI 设计
  • 案例展示
  • SEO 优化
  • 资讯中心
  • 联系我们

资讯详情

深度解读 · 专业分析

  • 首页
  • 资讯中心
  • /
  • 代码随想录算法训练营第四天:链表part02

最新资讯

  • 全部资讯
  • 行业动态
  • UI 设计
  • SEO 优化
  • 网站开发

代码随想录算法训练营第四天:链表part02

📅 发布时间:2026/6/18 23:49:39 👁 浏览次数:
代码随想录算法训练营第四天:链表part02

代码随想录算法训练营第四天:链表part02

24. 两两交换链表中的节点
leetcode链接:https://leetcode.cn/problems/swap-nodes-in-pairs/description/
题目描述:给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。
核心思路:主要关注各指针的指向,绘图来解决。

点击查看代码
class Solution {
public:ListNode* swapPairs(ListNode* head) {ListNode* dummyhead = new ListNode(0);dummyhead->next = head;ListNode* cur = dummyhead;while(cur->next != nullptr && cur->next->next != nullptr){ListNode* tmp = cur->next;ListNode* tmp1 = tmp->next->next;cur->next = tmp->next;cur->next->next = tmp;tmp->next = tmp1;cur = tmp;}ListNode* result = dummyhead->next;delete dummyhead;dummyhead = nullptr;return result;}
};

19.删除链表的倒数第N个节点
leetcode链接:https://leetcode.cn/problems/remove-nth-node-from-end-of-list/description/
题目描述:给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。
核心思路:定义变量来存储需要遍历链表的长度或者双指针法。
第一种方法:

点击查看代码
class Solution {
public:ListNode* removeNthFromEnd(ListNode* head, int n) {int size = 0;ListNode* dummyhead = new ListNode(0);dummyhead->next = head;ListNode* cur = dummyhead;while(cur->next != nullptr){cur = cur->next;size++;}int m = size - n;cur = dummyhead;while(m--){cur = cur->next;}ListNode* tmp = cur->next;cur->next = tmp->next;tmp = dummyhead->next;delete dummyhead;return tmp;}
};

双指针法:双指针的经典应用,如果要删除倒数第n个节点,让fast移动n步,然后让fast和slow同时移动,直到fast指向链表末尾。删掉slow所指向的节点就可以了。

点击查看代码
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--){fast = fast->next;}while(fast->next != nullptr){fast = fast->next;slow = slow->next;}ListNode* tmp = slow->next;slow->next = tmp->next;delete tmp;return dummyhead->next;}
};
**面试题 02.07. 链表相交** leetcode链接:https://leetcode.cn/problems/intersection-of-two-linked-lists-lcci/description/ 题目描述:给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null 。 核心思路:求出两个链表的长度,并求出两个链表长度的差值,然后让curA移动到,和curB 末尾对齐的位置
点击查看代码
class Solution {
public:ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) {int lenA = 0,lenB = 0;ListNode* ptrA = headA;ListNode* ptrB = headB;while(ptrA != NULL){//不是ptr->next,因为不是遍历而是统计长度。ptrA = ptrA->next;lenA++;}while(ptrB != NULL){ptrB = ptrB->next;lenB++;}ptrA = headA;ptrB = headB;if(lenB > lenA){swap(lenA,lenB);swap(ptrA,ptrB);}int n = lenA - lenB;while(n--){ptrA = ptrA->next;}while(ptrA != NULL){if(ptrA == ptrB){return ptrA;}ptrA = ptrA->next;ptrB = ptrB->next;}return NULL;}
};

142.环形链表II
leetcode链接:https://leetcode.cn/problems/linked-list-cycle-ii/description/
题目描述:给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。
核心思路:双指针遍历是否是环,根据数学推导,头节点到入口点的距离等于相遇点到入口点的距离,设置两个索引(头节点与相遇点各一个)指针来向下遍历,相遇点即是环的入口点。

点击查看代码
class Solution {
public:ListNode *detectCycle(ListNode *head) {ListNode* fast = head;ListNode* slow = head;while(fast != NULL && fast->next != nullptr){fast = fast->next->next;slow = slow->next;if(fast == slow){ListNode* index1 = head;ListNode* index2 = fast;while(index1 != index2){index1 = index1->next;index2 = index2->next;}return index1;}}return NULL;}
};

相关新闻

CF2027A-Rectangle Arrangement

CF2027A-Rectangle Arrangement

2026/6/11 19:09:58 查看详情
线段树全家桶

线段树全家桶

2026/6/18 0:42:49 查看详情
用 C# 和 Tesseract 实现英文数字验证码识别

用 C# 和 Tesseract 实现英文数字验证码识别

2026/6/18 5:49:10 查看详情
秦皇岛黄金回收看这里!六大品牌联动,全市各区县免费上门 - 清奢黄金上门回收

秦皇岛黄金回收看这里!六大品牌联动,全市各区县免费上门 - 清奢黄金上门回收

2026/6/19 15:14:34 查看详情
大连黄金回收行情全面解读,线上线下渠道差价对比,本地靠谱商家排名 - 奢侈品交易观察员

大连黄金回收行情全面解读,线上线下渠道差价对比,本地靠谱商家排名 - 奢侈品交易观察员

2026/6/19 15:14:34 查看详情
无锡亨得利邮寄维修服务全流程深度查询指南:足不出户享受官方售后保障,附2026全国官方服务网点完整公示 - 亨得利腕表维修中心

无锡亨得利邮寄维修服务全流程深度查询指南:足不出户享受官方售后保障,附2026全国官方服务网点完整公示 - 亨得利腕表维修中心

2026/6/19 15:12:24 查看详情
2026 合肥翡翠回收实测 本地靠谱变现门店精选对比测评 - 开心测评

2026 合肥翡翠回收实测 本地靠谱变现门店精选对比测评 - 开心测评

2026/6/19 15:12:24 查看详情
2026年6月最新雷达中国官方售后电话热线服务地址网点客服 - 亨得利官方服务中心

2026年6月最新雷达中国官方售后电话热线服务地址网点客服 - 亨得利官方服务中心

2026/6/19 15:12:11 查看详情
2026长沙爱马仕名包回收门店等级榜单,S级高端奢品回收,全套包包溢价更高 - 名奢变现站

2026长沙爱马仕名包回收门店等级榜单,S级高端奢品回收,全套包包溢价更高 - 名奢变现站

2026/6/19 15:12:24 查看详情
行星盘动力学与分子谱线诊断技术解析

行星盘动力学与分子谱线诊断技术解析

2026/6/19 0:01:24 查看详情
2026年成都GEO优化机构怎么选?全维度实用指南 - 刘向阳而生

2026年成都GEO优化机构怎么选?全维度实用指南 - 刘向阳而生

2026/6/19 0:01:39 查看详情
Akagi终极指南:5分钟掌握智能麻将AI助手的完整使用教程

Akagi终极指南:5分钟掌握智能麻将AI助手的完整使用教程

2026/6/19 0:01:39 查看详情
从Landsat到高分系列:手把手教你选择适合自己项目的遥感卫星数据

从Landsat到高分系列:手把手教你选择适合自己项目的遥感卫星数据

2026/6/18 19:44:15 查看详情
福州空调维修上门加氟移机空调不制冷、推荐本地老牌鑫盛达、冷顺安 - 我叫一

福州空调维修上门加氟移机空调不制冷、推荐本地老牌鑫盛达、冷顺安 - 我叫一

2026/6/18 22:29:08 查看详情
嵌入式调试器组件化界面与拖拽交互技术详解

嵌入式调试器组件化界面与拖拽交互技术详解

2026/6/18 22:19:33 查看详情
YOLOv11涨点改进| CVPR 2026 | 独家创新首发、特征融合改进篇| 引入CMGF 引导特征融合机制,实现对不同模态特征的自适应增强与高效融合,助力多模态目标检测,小目标检测或分割有效涨点

YOLOv11涨点改进| CVPR 2026 | 独家创新首发、特征融合改进篇| 引入CMGF 引导特征融合机制,实现对不同模态特征的自适应增强与高效融合,助力多模态目标检测,小目标检测或分割有效涨点

2026/6/18 22:29:00 查看详情
E-E-A-T 成第一权重:2027 年无经验内容将被彻底淘汰

E-E-A-T 成第一权重:2027 年无经验内容将被彻底淘汰

2026/6/18 23:21:38 查看详情
深圳福田园岭老小区搬家公司推荐 经验足师傅高效搬运攻略 - 从来都是英雄出少年

深圳福田园岭老小区搬家公司推荐 经验足师傅高效搬运攻略 - 从来都是英雄出少年

2026/6/18 22:29:04 查看详情

关于尧图

立足北京本地的一站式网站建设服务与设计教学平台,深耕企业网站定制开发、全网 SEO 优化及网络推广服务。

快速链接

  • 关于我们
  • 建站服务
  • 案例展示
  • 资讯中心

服务项目

  • 企业官网定制
  • UI 界面设计
  • SEO 优化推广
  • 移动端适配

联系方式

电话:400-XXX-XXXX

邮箱:info@zskr.cn

地址:北京市朝阳区 XXX 路 XX 号

© 2026 尧图网络科技 版权所有 | 京 ICP 备 XXXXXXXX 号