码迷,mamicode.com
首页 > 其他好文 > 详细

[LeetCode]Swap Nodes in Pairs 成对交换

时间:2015-02-25 15:35:59      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:

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.

思路:肯定是递归方便啦,我们做好了base case,一直调用自己就能够了。 要是想不出来base case是什么,多理解理解就熟悉了


[java] view plaincopy
  1. public ListNode swapPairs(ListNode head) {  
  2.        if(head==nullreturn null;  
  3.        if(head.next==nullreturn head;  
  4.        ListNode temp=head.next;  
  5.        ListNode forward=head.next.next;  
  6.        temp.next=head;  
  7.        head.next=swapPairs(forward);  
  8.        return temp;  
  9.    }  

[LeetCode]Swap Nodes in Pairs 成对交换

标签:

原文地址:http://www.cnblogs.com/bhlsheji/p/4299504.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!