zoukankan      html  css  js  c++  java
  • Swap Nodes in Pairs

    题目

    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.

    代码:

     1 public class Solution {
     2     public ListNode swapPairs(ListNode head) 
     3     {
     4         if(head == null || head.next == null)return head;
     5         ListNode fakehead = new ListNode(0);
     6         fakehead.next = head;
     7         
     8         ListNode ptr0 = fakehead;
     9         ListNode ptr1 = fakehead.next;
    10         
    11         while(ptr1!=null&&ptr1.next!=null)
    12         {
    13             ListNode ptr2 = ptr1.next;
    14             ListNode ptr3 = ptr1.next.next;
    15             ptr0.next=ptr2;
    16             ptr2.next=ptr1;
    17             ptr1.next=ptr3;
    18             ptr0=ptr1;
    19             ptr1=ptr3;
    20             
    21         }
    22         
    23         return fakehead.next;
    24     }
    25 }
  • 相关阅读:
    窗口实训1
    课后练习----实现窗口的切换
    第五次实训作业继承
    课程总结
    999
    777777777777777777777
    7
    6
    5
    事件处理程序
  • 原文地址:https://www.cnblogs.com/hygeia/p/4759901.html
Copyright © 2011-2022 走看看