LinkedList-24-Swap Nodes in Pairs
2018-02-01 17:33
281 查看
Description:
Given a linked list, swap every two adjacent nodes and return its head.
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.
Solution:
Recursive Version:
Given a linked list, swap every two adjacent nodes and return its head.
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.
Solution:
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ public class Solution { public ListNode swapPairs(ListNode head) { if (head == null || head.next == null) return head; ListNode cur = head; ListNode newHead = head.next; while (cur != null && cur.next != null) { ListNode tmp = cur; cur = cur.next; tmp.next = cur.next; cur.next = tmp; cur = tmp.next; if (cur != null && cur.next != null) tmp.next = cur.next; } return newHead; } }
Recursive Version:
public class Solution { public ListNode swapPairs(ListNode head) { if ((head == null)||(head.next == null)) return head; ListNode n = head.next; head.next = swapPairs(head.next.next); n.next = head; return n; } }
相关文章推荐
- LeetCode 24 Swap Nodes in Pairs(交换序列中的结点)(Linked List)
- LeetCode-LinkedList-24. Swap Nodes in Pairs
- 24. Swap Nodes in Pairs(Linked List)
- leetcode 【 Linked List Swap Nodes in Pairs 】 python 实现
- LeetCode_Linked List_Swap Nodes in Pairs
- [Linked List]Swap Nodes in Pairs
- 【LeetCode24】. Swap Nodes in Pairs Add to List
- LeetCode (24)Swap Nodes in Pairs
- LeetCode(24) Swap Nodes in Pairs
- 【LeetCode】C# 24、Swap Nodes in Pairs
- [leetcode] 24.Swap Nodes in Pairs
- [LintCode] Swap Two Nodes in Linked List 交换链表中的两个结点
- LeetCode 24 Swap Nodes in Pairs (链表 递归&&非递归)
- Swap Two Nodes in Linked List
- [LeetCode]24. Swap Nodes in Pairs
- LeetCode-24.Swap Nodes in Pairs
- LeetCode24 Swap Nodes in Pairs 25. Reverse Nodes in k-Group详解
- [leetcode]24. Swap Nodes in Pairs
- LeetCode(24) Swap Nodes in Pairs
- [Leetcode 24 链表]Swap Nodes in Pairs