0
点赞
收藏
分享

微信扫一扫

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

巧乐兹_d41f 2022-04-15 阅读 41
leetcode

提交记录

执行结果:
在这里插入图片描述

解题思路:
增加一个哨兵节点,就不需要考虑第一组操作的特殊性;

语言:C++

class Solution {
public:
    ListNode* swapPairs(ListNode* head) {
        ListNode*first=new ListNode(0);
        first->next=head;

        ListNode*p=first;
        ListNode*q=p->next;

        while(p->next && q->next){
            p->next=q->next;
            q->next=q->next->next;
            p->next->next=q;

            p=p->next->next;
            q=p->next;
        }

        return first->next;

    }
};

细节提升

1.增加哨兵节点

增加一个哨兵结点放在头节点的前面。

举报

相关推荐

0 条评论