Leetcode 24. Swap Nodes in Pairs
2017-03-11 00:09
423 查看
题目描述:
题目链接交换链表的相邻结点,然后返回新的链表的头结点。
思路分析:
遍历链表,每次交换两个结点。需要定义的指针比较多,自己举个例子,在纸上画个图,可以很容易的理解。代码实现:
/** * 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 newHead = new ListNode(0); newHead.next = head; ListNode zero = newHead; ListNode pre = head; ListNode p = pre.next; ListNode next = null; //遍历链表,每次反转两个节点 while (pre != null && p != null) { //反转两个节点 next = p.next; p.next = pre; pre.next = next; zero.next = p; //反转两个节点之后,将指针后移 if (next == null) { break; } else { //将指针后移 zero = pre; pre = next; p = pre.next; } } return newHead.next; } }
相关文章推荐
- leetcode 24 Swap Nodes in Pairs
- LeetCode 24.Swap Nodes in Pairs
- Java [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 (C,C++,Java,Python)
- 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
- Swap Nodes in Pairs - LeetCode 24
- LeetCode24之SwapNodesInPairs的Java 题解
- [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
- leetcode-24 Swap Nodes in Pairs
- LeetCode_24---Swap Nodes in Pairs