LeetCode 024. 两两交换链表中的节点

给定一个链表,两两交换其中相邻的节点,并返回交换后的链表
你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。
示例:
给定 1->2->3->4, 你应该返回 2->1->4->3.

C

struct ListNode* swapPairs(struct ListNode* head){
    struct ListNode* r;
    if(head==NULL||head->next==NULL)
        return head;
    struct ListNode* temp = head->next;
    head->next = swapPairs(temp->next);
    temp->next = head;
    return temp;
}

你可能感兴趣的:(LeetCode 024. 两两交换链表中的节点)