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)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
相关推荐
悄悄敲敲敲2 小时前
Linux:进程间通信->共享内存
linux·运维·服务器
绵绵细雨中的乡音2 小时前
Linux进程学习【环境变量】&&进程优先级
linux·运维·学习
天下·第二2 小时前
【Nginx】负载均衡配置详解
运维·nginx·负载均衡
GanGuaGua3 小时前
linux:进程的替换
linux·运维·服务器
梓䈑3 小时前
【Linux系统】详解Linux权限
linux·运维·bash
小茬粥3 小时前
kvm网卡发现的采集信息脚本COLT_CMDB_KVM_NETDISC.sh
linux·kvm
Mr_sun.4 小时前
Day23-Web开发——Linux
linux·运维·服务器
星雨流星天的笔记本4 小时前
1、Linux操作系统下,ubuntu22.04版本切换中英文界面
linux·学习
极小狐4 小时前
如何创建并使用极狐GitLab 部署令牌?
运维·git·ssh·gitlab·github
muxue1784 小时前
centos 7 网络配置(2):ping命令出现问题
linux·网络·centos