24. Swap Nodes in Pairs #
题目 #
给定链表,两两交换其中相邻的节点,并返回交换后链表的头节点。只能进行节点交换,不能修改节点内部的值。
思路 #
代码 #
public class ListNode {
int val;
ListNode next;
ListNode() {}
ListNode(int val) { this.val = val; }
ListNode(int val, ListNode next) { this.val = val; this.next = next; }
}
class Solution {
public ListNode swapPairs(ListNode head) {
if (head == null || head.next == null) return head;
else {
ListNode newHead = head.next;
head.next = swapPairs(newHead.next);
newHead.next = head;
return newHead;
}
}
}