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

Leetcode 24 Swap Nodes in Pairs

题意:给定一个list of nodes,要求交换相邻的两个节点
https://leetcode.com/problems/swap-nodes-in-pairs/description/
Input: head = [1,2,3,4]
Output: [2,1,4,3]
首先你需要思考,我要交换两个节点,对于每个节点,向前指的指针会改变,🤔后指的指针也会改变,所以我需要三个指针来解决这个问题。
比较容易错的地方是prev指针指向的位置,永远应该是每一个需要改变节点的前一个指针

/*** 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* swapPairs(ListNode* head) {if(!head) {return nullptr;}ListNode dummy = ListNode(-1);dummy.next = head;ListNode* prev = &dummy;while(prev->next && prev->next->next) {ListNode* p1 = prev->next;ListNode* p2 = prev->next->next;p1->next = p2->next;p2->next = p1;prev->next = p2;prev = p1;}return dummy.next;}
};
http://www.lryc.cn/news/456892.html

相关文章:

  • 选择 PDF 编辑器时要考虑什么?如何选择适用于 Windows 10 的 PDF 编辑器
  • 33-Golang开发入门精讲
  • 研发中台拆分之路:深度剖析、心得总结与经验分享
  • SWIFT Payment
  • 数据结构之红黑树实现(全)
  • 冷热数据分离
  • 朝花夕拾:多模态图文预训练的前世今生
  • 亳州自闭症寄宿制学校,关注孩子的学习和生活
  • Root me CTF all the day靶场ssrf+redis漏洞
  • C#中Json序列化的进阶用法
  • IO相关的常用工具包
  • Spring Boot集成RBloomFilter快速入门Demo
  • 布局性能优化
  • 智云人才推荐与管理系统
  • git在远程分支上新建分支
  • 用Python实现的高校教师资格考试题库程序
  • OpenVINO基本操作流程
  • Spring MVC 注解详解:@RequestBody,@RequestParam 和 @PathVariable
  • MySQL 8 中的 sql_mode
  • 13种pod的状态
  • 2025考研今天开始预报名!攻略请查收
  • JS中的Promise经典题目解析
  • 【机器学习】金融预测 —— 风险管理与股市预测
  • Bootstrap 5 分页组件使用教程
  • Linux 安装 NVM 并配置 npm 加速,开发 node 项目不再愁
  • MySQL 多条件查询
  • 深度学习模型
  • Nexpose 6.6.271 发布下载,新增功能概览
  • SimpleRAG-v1.0.3:增加文件对话功能
  • 数学建模算法与应用 第7章 数理统计与方法