最傻的方法:
ListNode *swapPairs(ListNode *head) { if (head == NULL) return NULL; ListNode *temp = ); ListNode *head_2 = temp; while (head != NULL && head->next != NULL) { temp = temp->next = new ListNode(head->next->val); temp = temp->next = new ListNode(head->val); head = head->next->next; } if (head != NULL) temp->next = head; return head_2->next; }
好一点的方法
ListNode* swapPairs(ListNode* head) { if(!head || !head->next) return head; ListNode * temp = head->next; head->next = swapPairs(temp->next); temp->next = head; return temp; }