题意:给定一个链表,要求两两交换链表中相邻的两节点,比如1->2->3->4变为2->1->4->3
思路:最简便的方法就是递归,头结点的下一个节点是已经转换好的节点的头结点,之后再把原来头结点的下一节点接到头结点上即可
class Solution {
public ListNode swapPairs(ListNode head) {
if (head == null || head.next == null)
return head;
ListNode next = head.next;
head.next = swapPairs(next.next);
next.next = head;
return next;
}
}