LeetCoder 24. Swap Nodes in Pairs
2017-05-21 16:30
281 查看
题意
将一个链表两个为一组进行组内交换,例如:1->2->3->4,那么
1,2为一组,
3,4为一组,交换后为
2->1->4->3
思路
没什么特殊的解法,主要是考察了链表中next指针的应用,组内交换的话很好实现,但是不要忽略了两组之间如何来进行连接,所以设置一个pre指针来进行连接.另外:在做完之后测试了一下只将结点值进行交换是否可以通过,没想到真的通过了2333
代码
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode* swapPairs(ListNode* head) { if(head == NULL) return head; if(head->next == NULL) return head; ListNode *p = head; ListNode *ans = new ListNode(0); ans->next = head; ListNode *pre = ans; while(p != NULL && p->next != NULL){ ListNode *temp = p->next; pre->next = temp; p->next = temp->next; temp->next = p; pre = p; p = p->next; } ans = ans->next; return ans; } };
相关文章推荐
- [Leetcode 22] 24 Swap Nodes in Pairs
- 【LeetCode】24.Swap Nodes in Pairs
- LeetCode 24.Swap Nodes in Pairs
- [LeetCode]--24. Swap Nodes in Pairs
- 24. Swap Nodes in Pairs
- LeetCode代码记录 24 Swap Nodes in Pairs
- leetcode 24 Swap Nodes in Pairs
- leetcode 24. Swap Nodes in Pairs
- [LeetCode]24. Swap Nodes in Pairs
- [Leetcode]_24 Swap Nodes in Pairs
- [LeetCode]24 Swap Nodes in Pairs
- [LeetCode]24. Swap Nodes in Pairs
- LeetCode之24----Swap Nodes in Pairs
- 24. Swap Nodes in Pairs
- LeetCode 24. Swap Nodes in Pairs
- Leetcode 24 Swap Nodes in Pairs
- leetcode24:Swap Nodes in Pairs
- Leetcode 24 Swap Nodes in Pairs
- [leetcode 24]Swap Nodes in Pairs-----成对翻转链表中的节点
- LeetCode24 Swap Nodes in Pairs 25. Reverse Nodes in k-Group详解