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

Posted 小白进修

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode 24 两两交换链表中的节点相关的知识,希望对你有一定的参考价值。

地址:https://leetcode-cn.com/problems/swap-nodes-in-pairs/
大意:给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。

class Solution {
public:
    ListNode* swapPairs(ListNode* head) {
        if(head == NULL || head->next == NULL)
            return head;
        
        ListNode *hh = new ListNode(0);
        hh->next = head;
        ListNode *one = hh;
        ListNode *two = hh;
        while(one != NULL && one->next != NULL){
            two = one->next;

            if(two->next != NULL){
                ListNode *second = two->next;
            
                two->next = two->next->next;
                second->next = one->next;
                one->next = second;

            }else
                break;
            
            one = one->next->next;
        }
        return hh->next;
    }
};

以上是关于leetcode 24 两两交换链表中的节点的主要内容,如果未能解决你的问题,请参考以下文章

leetcode 24 - 两两交换链表中的节点

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

leetcode 每日一题 24. 两两交换链表中的节点

leetcode 每日一题 24. 两两交换链表中的节点

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

链表-LeetCode24两两交换链表中的节点