LeetCode 24 Swap Nodes in Pairs (交换相邻节点)

 
Problem: 交换相邻的两个节点
 
 
  如上图所示,递归进行交换。从最尾端开始,当最尾端只有一个节点时,停止交换
  否则执行 swap(head.next) 
 
参考代码:
 
package leetcode_50;

/**
 * 
 * @author pengfei_zheng
 * 交换相邻节点
 */
public class Solution24 {
    public class ListNode {
          int val;
          ListNode next;
          ListNode(int x) { val = x; }
      }
     
    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;
    }
}
 
原文地址:https://www.cnblogs.com/zpfbuaa/p/6527363.html