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

Leetcode#24Swap Nodes in Pairs

时间:2015-05-20 02:13:19      阅读:106      评论:0      收藏:0      [点我收藏+]

标签:example   linked   public   return   itself   

Swap Nodes in Pairs

 Total Accepted: 47624 Total Submissions: 146226My Submissions

Question Solution 


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.


Show Tags


分析:交换临近两个点,注意有奇数个点的情况


public class Solution {

    public ListNode swapPairs(ListNode head) {

        ListNode x=new ListNode(0);

        x.next=head;

        ListNode y=x;

        while(y.next!=null)

        {

            if(y.next.next==null)

                break;

            else

            {

                ListNode z=y.next.next.next;

                ListNode x1=y.next.next;

                ListNode x2=y.next;

                y.next=x1;

                x1.next=x2;

                x2.next=z;

                y=x2;

            }

        }

        return x.next;

    }

}


Leetcode#24Swap Nodes in Pairs

标签:example   linked   public   return   itself   

原文地址:http://7061299.blog.51cto.com/7051299/1652926

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