1、题目描述
2、问题分析
对两个节点进行交换操作
3、代码
1 ListNode* swapPairs(ListNode* head) { 2 if( !head || head->next == NULL ){ 3 return head; 4 } 5 ListNode dummy(0); 6 ListNode* d = &dummy; 7 ListNode* p = head; 8 while( p && p->next != NULL ){ 9 ListNode* tmp = p->next->next ; 10 d->next = p->next ; 11 p->next->next = p ; 12 d = p; 13 p->next = tmp; 14 p = p->next ; 15 } 16 17 return dummy.next ; 18 19 }