[LeetCode]Swap Nodes in Pairs
2013-11-12 21:08
274 查看
Given a linked list, swap every two adjacent nodes and return its head.
For example, Given
Your algorithm should use only constant space. You may not modify the values in the list, only nodes itself can be changed.
思考:考虑几种情况:空链表,单节点链表,奇数个结点,偶数个结点。画图帮助理解。
For example, Given
1->2->3->4, you should return the list as
2->1->4->3.
Your algorithm should use only constant space. You may not modify the values in the list, only nodes itself can be changed.
思考:考虑几种情况:空链表,单节点链表,奇数个结点,偶数个结点。画图帮助理解。
class Solution { public: ListNode *swapPairs(ListNode *head) { // IMPORTANT: Please reset any member data you declared, as // the same Solution instance will be reused for each test case. if(head==NULL||head->next==NULL) return head; ListNode *p,*q,*r; ListNode *newhead=NULL; p=head; q=p->next; while(p->next) { p->next=q->next; q->next=p; if(newhead==NULL) { newhead=q; r=p; } else { r->next=q; r=p; } if(p->next) { p=p->next; q=p->next; } } return newhead; } };
相关文章推荐
- [leetcode] 【链表】24. Swap Nodes in Pairs
- LeetCode:Swap Nodes in Pairs
- Leetcode Swap Nodes in Pairs
- LeetCode 24. Swap Nodes in Pairs
- 【LeetCode24】. Swap Nodes in Pairs Add to List
- [leetcode] Swap Nodes in Pairs
- [Leetcode] Swap Nodes in Pairs
- [LeetCode] Swap Nodes in Pairs 解题报告
- LeetCode – Refresh – Swap Nodes in Pairs
- python实现 LeetCode24——Swap Nodes in Pairs
- (LeetCode)Swap Nodes in Pairs --- 交换两个相邻的结点
- leetcode 24. Swap Nodes in Pairs
- [leetcode 24]Swap Nodes in Pairs
- 【LeetCode】24.Swap Nodes in Pairs
- LeetCode24之SwapNodesInPairs的Java 题解
- LeetCode Swap Nodes in Pairs
- [LeetCode]Swap Nodes in Pairs
- Swap Nodes in Pairs leetcode java
- leetCode 24. Swap Nodes in Pairs 链表
- [LeetCode]Swap Nodes in Pairs 成对交换