24. 两两交换链表中的节点

头结点dummyHead

定义结点temp用来暂存node2

让node1和node2位置互换:head(temp)->node1->node2->node3->node4

然后让temp等于交换后node1位置:head->node2->node1(temp)->node3->node4

cpp 复制代码
class Solution {
public:
    ListNode* swapPairs(ListNode* head) {
        ListNode* dummyHead = new ListNode(0);
        dummyHead->next = head;
        ListNode* temp = dummyHead;
        while (temp->next != nullptr && temp->next->next != nullptr) {
            ListNode* node1 = temp->next;
            ListNode* node2 = temp->next->next;
            temp->next = node2;
            node1->next = node2->next;
            node2->next = node1;
            temp = node1;
        }
        return dummyHead->next;
    }
};

作者:力扣官方题解
链接:https://leetcode.cn/problems/swap-nodes-in-pairs/solutions/444474/liang-liang-jiao-huan-lian-biao-zhong-de-jie-di-91/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
相关推荐
.小小陈.1 分钟前
深度拆解 Linux 程序编译与链接:从静态库到 ELF 运行时全流程
linux·运维·服务器
十六年开源服务商8 分钟前
WordPress服务器响应时间优化终极指南2026
android·运维·服务器
HealthScience9 分钟前
Autoruns自启动/进程控制软件怎么使用?
linux·运维·服务器
Arvin_Rong10 分钟前
Linux 服务器 /tmp 目录:使用机制与安全加固
linux·服务器·安全
gwjcloud13 分钟前
Lvs+Keepalived详解
运维·lvs
RDCJM17 分钟前
nginx 代理 redis
运维·redis·nginx
小江的记录本18 分钟前
【RocketMQ】RocketMQ核心知识体系全解(5大核心模块:架构模型、事务消息两阶段提交、回查机制、延迟消息、顺序消息)
linux·运维·服务器·前端·后端·架构·rocketmq
数据知道18 分钟前
claw-code 源码详细分析:命令宇宙 vs 工具宇宙——`commands` / `tools` 镜像清单如何驱动路由与 shim 执行?
linux·服务器·网络·python·ai·claude code
三万棵雪松21 分钟前
【Linux 物联网网关主控系统-Web部分(二)】
linux·前端·物联网
一叶之秋141221 分钟前
通信之道:解锁Linux进程间通信的无限可能(一)
linux·运维·服务器